AS3 - 在不加载的情况下将POST数据发送到另一个域(沙盒安全性)

时间:2011-08-23 13:35:39

标签: flash flex actionscript-3 post sandbox

我需要将POST数据发送到不同域名的ASP脚本(不加载数据)。

var scriptRequest :URLRequest = new URLRequest( 'http://someExternalCart.com/cart.asp' );
scriptRequest.method = URLRequestMethod.POST;
scriptRequest.data = scriptVars;

它适用于navigateToUrl,但我不想被重定向到那个页面,我只想发送数据。

我试过这个:

var ldr :URLLoader = new URLLoader();
ldr.load( scriptRequest );

但我收到了沙箱安全错误。

是否有其他方式在没有重定向/页面重新加载且没有加载的情况下发送数据(导致安全性错误)?

2 个答案:

答案 0 :(得分:3)

如果您无权访问服务器以添加crossdomain.xml安全策略文件,则需要在自己的服务器上设置代理,以便为您传递请求(类似http://xmlrpcflash.mattism.com/proxy_info.php} )。

答案 1 :(得分:1)

为避免沙箱错误,您需要在“http://someExternalCart.com/”上提供跨域文件。

http://www.adobe.com/devnet/articles/crossdomain_policy_file_spec.html

或者您可以在您的网络服务器上使用脚本(php,asp ...)作为代理。

http://www.snorkl.tv/2011/04/get-data-into-flash-from-other-domains-with-crossdomain-xml-or-php-proxy-script/