【发布时间】:2013-04-15 07:59:32
【问题描述】:
我有一些代码使用来自 google 的 UrlLoader 加载一些数据,此代码停止为 google.com 工作,但仍适用于 google.co.uk 等其他域,在 google.com 上 loader.data 为空,但如果我在浏览器中加载该 url 我可以看到数据,因此服务器似乎响应了。 我的问题是如何配置 UrlLoader 以便它返回正确的数据。 这是一些测试代码,您可以评论/取消评论网址以检查工作网址,欢迎任何提示或建议谢谢。 编辑:此代码来自 Adobe AIR 应用程序,该应用程序在桌面上运行,而不是在 Web 浏览器内。
public static function testPrediction():void{
var _loader:URLLoader=new URLLoader();
_loader.addEventListener(Event.COMPLETE,onComplete);
_loader.addEventListener(IOErrorEvent.IO_ERROR, err);
_loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, err);
_loader.addEventListener(HTTPStatusEvent.HTTP_RESPONSE_STATUS,err);
_loader.addEventListener(HTTPStatusEvent.HTTP_STATUS,err);
_loader.dataFormat=URLLoaderDataFormat.TEXT;
//this does not work
var url:String="http://www.google.com/complete/search?js=true&output=toolbar&hl=en&q=ubuntu";
//this link works
//var url:String="http://www.google.co.uk/complete/search?js=true&output=toolbar&hl=en&q=ubuntu";
var urlRequest:URLRequest=new URLRequest(url);
urlRequest.followRedirects=true;
urlRequest.userAgent="Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0";
_loader.load(urlRequest);
function onComplete(e:Event):void{
var loader:URLLoader=e.target as URLLoader;
trace(loader.data);
}
function err(e:Event):void{
trace(e);
}
}
【问题讨论】:
-
这里有一个提示:
http://www.google.com/crossdomain.xml. -
@MartyWallace 嗨,我忘了提到代码在桌面上的 AIr 中运行,并且我没有遇到任何安全异常,如果您仍然认为您知道这个问题,请添加对此问题的回复一些细节/参考?谢谢
标签: actionscript-3 flash http