Android 在XML提要上获取角度HTTP的错误响应

Android 在XML提要上获取角度HTTP的错误响应,android,angularjs,xml,ionic,Android,Angularjs,Xml,Ionic,我试图从雅虎财经获取头条新闻,但下面的代码似乎不起作用。它直接进入错误处理程序。我尝试了一些其他的URL,但它们似乎也不起作用。我用ionic在android仿真器中测试了这段代码。我做错了什么 $http.get("http://feeds.finance.yahoo.com/rss/2.0/headline?s=GOOG&region=US&lang=en-US") .success(function(data) { $log.log(data);

我试图从雅虎财经获取头条新闻,但下面的代码似乎不起作用。它直接进入错误处理程序。我尝试了一些其他的URL,但它们似乎也不起作用。我用ionic在android仿真器中测试了这段代码。我做错了什么

$http.get("http://feeds.finance.yahoo.com/rss/2.0/headline?s=GOOG&region=US&lang=en-US")
    .success(function(data) {
        $log.log(data);
    })
    .error(function(data) {
        $log.log("ERROR: " + data);
});      
更新: 通读米奇的链接,你很可能会像我一样在那里找到解决方案。对我来说,启动chromium时,我必须使用-禁用web安全。很显然,对于这些类型的http请求来说,这是不够的


此外,如果您在模拟器中遇到问题,请不要使用实时重新加载。这似乎会导致http请求出现问题。

如果查看开发人员控制台,您将看到以下消息:请求的资源上不存在“Access Control Allow Origin”头

这意味着收到的响应确实允许来自localhost的请求,因此浏览器会阻止它。出于安全原因,Javascript受到同源策略的限制,因此恶意脚本无法联系远程服务器并发送敏感数据。有关此类问题的更多详细信息,请参见:

但这只是因为您正在浏览器中测试应用程序。如果你构建了你的Ionic应用程序并在设备上进行测试,它应该可以完美工作

要在浏览器中测试应用程序,必须禁用web安全。你应该做的只是为了发展,而不是在冲浪的时候

下面是一篇文章,解释如何在Chrome中禁用web安全:

似乎有一个插件在Firefox上运行,但我还没有尝试过:

谢谢。当我使用同一源扩展时,我认为我已经涵盖了这一点,但显然我仍然需要包括标志-启动时禁用web安全。你也说如果我构建它并在设备上测试它,它将工作。但这是否意味着它不能在模拟器中工作?它也应该在模拟器中工作。这种安全性来自浏览器。在Cordova上,它是由白名单插件处理的,我已经安装了白名单插件,但在模拟器中它似乎是livereload的一个问题。如果你把livereload关掉,它似乎会起作用。再次感谢你。