我正在尝试使用urlloader和urlrequest在as3中发出http请求。这给出了流错误2032的错误,这是因为网站不允许来自Flash的urlrequest?
无论如何,为什么会这样?我怎么能“欺骗”网站只是认为这是一个浏览器(firefox,chrome)的正常请求?
var loader:URLLoader = new URLLoader();
var request:URLRequest = new URLRequest("http://www.travian.com");
loader.addEventListener(Event.COMPLETE, on_complete);
loader.load(request);
编辑:我想问的是......网站如何知道这是来自adobe air的http请求?如何让它看起来像来自Firefox / Chrome或其他任何内容的http请求。
答案 0 :(得分:0)
在服务器上的公共目录的根目录中添加名为crossdomain.xml的文件。
应该指出: http://www.travian.com/crossdomain.xml
并且应该包含以下内容:
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="master-only" />
<allow-access-from domain="*" secure="false" />
<allow-http-request-headers-from domain="*" headers="*" />
</cross-domain-policy>