を使用してローカル http ソケットに接続しようとしている AIR 3.1 を使用して AIR アプリケーションを構築しています。
localhost:7676
ソケットは、AIR アプリが localhost を使用して接続しようとしているのと同じコンピューター上の OSX アプリケーションから実行されています。接続が成功すると、AIR アプリはデータの JSON 文字列を受け取ることになっています。
ブラウザでswfを実行すると、localhost:7676を使用して接続しますが、問題はありません。ソケットを実行しているOSXアプリに正常に接続します。FlashBuilder プロジェクトがパッケージ化され、AIR アプリとしてコンパイルされ、同じアドレスを使用して接続すると、このエラーが発生し、解決方法がわかりません...
* セキュリティ サンドボックス違反 * localhost:7676 への接続が停止しました - app:/Matrx_Remote_App.swf からは許可されていません SecurityError: エラー #2147: URL localhost:7676 で禁止されているプロトコル
クラスで使用しているコードは単純なローダー クラスです。
_loader = new URLLoader();
var request:URLRequest = new URLRequest("http://localhost:7676");
_loader.addEventListener(Event.COMPLETE, onComplete);
_loader.addEventListener(IOErrorEvent.IO_ERROR, ioerrorHandler);
_loader.addEventListener(flash.events.HTTPStatusEvent.HTTP_RESPONSE_STATUS, handleOnEventStatus);
_loader.load(request);
onComplete メソッドは次のようになります。
private function onComplete(e:Event):void {
trace("e " + URLLoader(e.target).data + _loader.data + " _loader.bytesTotal " + _loader.bytesTotal);
var loader:URLLoader = URLLoader(e.target);
var jsonData:Object = JSON.parse(loader.data);
trace(jsonData);
}
これに関するどんな助けも大歓迎です、ありがとう!