Skip to content

action script3でクロスドメインの画像読み込みを試してみる

mechamogera edited this page Sep 6, 2012 · 4 revisions

検証手順

検証用画像配置環境

  • Amazon S3のBucket上に配置(誰でも見れるように権限変更)
  • 以下のcrossdomain.xmlを直下に配置(誰でも見れるように権限変更)
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
  <site-control permitted-cross-domain-policies="all"/>
  <allow-access-from domain="*" secure="false"/>
  <allow-http-request-headers-from domain="*" headers="*" secure="false"/>
</cross-domain-policy>

検証用スクリプト

結果

  • スクリプトそのままだとDebug用のFlash Playerで以下のエラーが発生
  • bd.draw(loader)をせずにaddChild(loader)だけなら問題なく画像が表示される
SecurityError: Error #2122: セキュリティサンドボックス侵害 : BitmapData.draw:file:///hoge/LoadImage.swf は https://example.com/hoge.jpg にアクセスできません。ポリシーファイルが必要ですが、このメディアがロードされたとき、checkPolicyFile フラグが設定されませんでした。
	at flash.display::BitmapData/draw()
	at MethodInfo-1()
  • スクリプトのコメントアウトを外して対処すると画像読み込みOK

参照サイト

Clone this wiki locally