0

ブラウザ ベースの Flex アプリケーションからサーブレットを呼び出していますが、次の例外が発生します。

Error #2044: Unhandled securityError:. text=Error #2170: Security sandbox violation: http://MyURL/web-player/WebPlayer.swf cannot send HTTP headers to http:/MyOtherUrl:1936/ImageUpload.
      at WebPlayer/screenGrab()
      at WebPlayer/__exportImageButton_click()

次の crossdomain.xml が提供されています

http://MyOtherUrl/ 

http://MyOtherUrl:1936/ 

(サーブレットが提供されるポート)。

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
  <cross-domain-policy>
  <allow-access-from domain="*" />
  <allow-http-request-headers-from domain='*' headers="*" secure="false"/>
  <site-control permitted-cross-domain-policies="all"/>
</cross-domain-policy>

私は何を間違っていますか?


コードを含めるように編集


var urlRequest:URLRequest = new URLRequest();
urlRequest.url = "http://MyUrl:1936/ImageUpload";
urlRequest.contentType = 'multipart/form-data; boundary=' + UploadPostHelper.getBoundary();
urlRequest.method = URLRequestMethod.POST;
var params:Object = new Object();
params.userId = userId;
params.videoId = videoId;
urlRequest.data = UploadPostHelper.getPostData("splash.jpg", jpegStream, params);
urlRequest.requestHeaders.push( new URLRequestHeader( 'multipart/form-data', 'image/jpg' ) );

var urlLoader:URLLoader = new URLLoader();
urlLoader.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
urlLoader.dataFormat = URLLoaderDataFormat.BINARY;
urlLoader.load(urlRequest);
4

1 に答える 1

0

ブラウザから crossdomain.xml にアクセスできるかどうかを確認してください。MyOtherUrl:1936/crossdomain.xml に移動します。

http://www.charlesproxy.com/でトラフィックをチェックして 、エラーの内容を確認してください。

于 2012-05-17T18:24:37.747 に答える