1 返信 最新の回答 日時: Aug 24, 2014 8:21 PM ユーザー:kennchan

    バージョンアップでnavigateToURLが動作しません

    mshinoch

      navigateToURLを使用し、別ウィンドウで別ドメインのページを開くアプリを作成していました。

      これまで問題なく動作していましたが、FlashPlayerをバージョンアップしたところ、別ウィンドウが出なくなりました。

      ----------------------------------------------------

      バージョン別実行結果

      ----------------------------------------------------

      FlashPlayer 14.0.0.125:OK(別ウィンドウにて表示)

      ----------------------------------------------------

      FlashPlayer 14.0.0.145:エラー発生

          SecurityError: Error #3769: セキュリティサンドボックス侵害 : navigateToUrl() を使用している場合、HTTP ヘッダーを送信できません。

              at global/flash.net::navigateToURL()

      ----------------------------------------------------

      FlashPlayer 14.0.0.176:エラー発生

          SecurityError: Error #3769: セキュリティサンドボックス侵害 : navigateToUrl() を使用している場合、HTTP ヘッダーを送信できません。

              at global/flash.net::navigateToURL()

      ----------------------------------------------------

       

      <該当箇所ソース>

      private function onClickLink(event:MouseEvent):void

      {

          var urlReq:URLRequest = new URLRequest();

          urlReq.url = "https://www.adobe.com/";

          urlReq.method = "POST"

          urlReq.contentType = "text/html";

          flash.net.navigateToURL(urlReq, "_blank");

      }

       

      遷移先URLをリバースプロキシで同一ドメインにしても現象は変わりませんでした。

      とりあえず、下記のように変更することで回避は出来ました。

      private function onClickLink(event:MouseEvent):void

      {

          var urlReq:URLRequest = new URLRequest("javascript:window.open("\"https://www.adobe.com/\", \"_blank\"");\nvoid(0);");

          flash.net.navigateToURL(urlReq, "_self");

      }

       

      ただ、FlashPlayerの仕様変更なのか、不具合なのかなど、原因が不明です。

      なぜバージョンアップにより動作しなくなったのかどなたかご存じないでしょうか?