- 締切済み
クロスドメインによるswf読み込みと相互制御
環境:as2.0 Flash8 winXPです。よろしくお願いします。 本サイトhttp://www.aaa.com下にある親swf【aaa.swf】から mcLoader.loadClip("http://www.bbb.com/bbb.swf", yomikomi_mc); で別ドメインhttp://www.bbb.com下にある子swf【bbb.swf】を読み込み 相互制御したいと考えています。 それぞれに 親swf System.security.allowDomain("bbb.com"); 子swf System.security.allowDomain("aaa.com"); と書いています。 読み込みと、親swfから子swfへの制御は出来るのですが yomikomi_mc.gotoAndStop(2);//などは問題なく動く 子swfから親swfへの制御ができません。 同じドメイン下にある時には制御できるのですが、クロスドメインから読み込むと、 制御できません。 制御できない部分を詳しく記述させて頂きますと、子swfは lockroot = true; としていますので親swfへのパス、 _root._parent._root=gotoAndStop(3); やグローバル変数(親swfで指定_global.hensuu=5;) trace(hensuu); などがundifinedとなってしまいます。 親swfファイルへの制御許可の記述が System.security.allowDomain("aaa.com"); ということではないのでしょうか?記述の仕方が問題でしょうか? 親swfへのパスが変わってしまうのかとも思い色々試してみたのですがうまくいきません。 ご教授頂ければ幸いです。よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- BlurFiltan
- ベストアンサー率91% (1611/1754)
お礼
いつも回答下さいましてありがとうございます。 クロスドメインのxmlも試していたのですが、同じ現象になる (親から子は読み込め、制御できるが子から親が制御できない) 特に親から子を制御出来るのでxmlは関係ないのかと思いこんでいました。 >SWFだけで設定できるのでしたら,サーバにとっては何のセキュリティーにもならない たしかに仰る通りですね。 指摘頂き、原因がはっきりしたので再度調べ直したのですがやはりうまく行きません。 crossdomain.xmlの記述は <?xml version="1.0"?> <cross-domain-policy> <site-control permitted-cross-domain-policies="all" /> <allow-access-from domain="www.aaa.com" /> </cross-domain-policy> です。 crossdomain.xmlファイルはbbb.swfファイルとともにドメイン直下 http://www.bbb.com/crossdomain.xml http://www.bbb.com/bbb.swf に置いています。 <allow-access-from domain="www.aaa.com" /> の部分のドメイン部分を http://www.aaa.com aaa.com などと変えてみるぐらいしか思いつかずやはり行き詰っております。 根本的に何か間違っているのでしょうか? 何かアドバイス頂ければ幸いです。よろしくお願いいたします。