1

我在 Facebook 上有一个 Flash 应用程序。我使用以下代码将图像发送到我的服务器:

var byte_array:ByteArray = PNGEncoder.encode(bitmap_data);
var encoded:String = Base64.encodeByteArray(byte_array);
var variables:URLVariables = new URLVariables();
variables.png = encoded;

var requestToMySite:URLRequest = new URLRequest();
requestToMySite.url = SITE_URL_HTTPS + 'copy.php';
requestToMySite.method=URLRequestMethod.POST;
requestToMySite.data = variables;
var loader : URLLoader = new URLLoader();  
loader.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
loader.addEventListener(Event.COMPLETE, onExportComplete);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityError);
loader.load(requestToMySite);

问题是它对某些人(比如我)很好用,但对另一些人却不起作用。我记录了问题,发现他们有一个 SecurityError :

[SecurityErrorEvent type="securityError" bubbles=false cancelable=false eventPhase=2 text="Error #2048"]

我不明白为什么它适用于某些人而不适用于其他人。也许是一个奇怪的巧合:它适用于在法国(4 名测试人员)而不是在国外(在瑞士进行测试,在比利时进行测试)的人。

我尝试输入以下 crossdomain.xml :

<?xml version="1.0" ?>
<cross-domain-policy>
   <site-control permitted-cross-domain-policies="all"/>
   <allow-access-from domain="*" to-ports="*"/>
   <allow-http-request-headers-from domain="*" headers="*"/>
   <allow-http-request-headers-from domain="*"/>
</cross-domain-policy>

我加载它

Security.loadPolicyFile(SITE_URL_HTTP + "crossdomain.xml");

(不是 https 网址)。但这并没有改变任何东西。

任何想法 ?

4

0 回答 0