0

我想开发一个小型 RSS 阅读器,可以从各种网站获取 XML 文档。我认为 XHR 会很简单,如果用户可以操纵浏览器 UI 来获取明显的“跨源”网页,JavaScript 代码不应该能够轻松做到这一点吗?显然没有:/

这是我正在尝试做的事情:

var xhr = new XMLHttpRequest();
    // A real feed URL, its web server should allow CORS
    xhr.open('GET', 'http://feeds2.feedburner.com/thenextweb');
    xhr.send();

在本地打开我的 HTML 页面 (file:///) 会使 Origin 为空并且响应为空,但是如果我通过本地 Web 服务器访问该页面(我尝试了 Python 和 Node 服务器脚本),则 Origin 不为空,而是响应仍然是空的。

我知道周围有足够多的 XHR 问题,但有人能指出我遗漏了什么吗?

4

1 回答 1

3

Feedburner 不支持 CORS(目前)。这些是我从 jsfiddle 执行代码时从 feedburner 收到的标头:

HTTP/1.1 200 OK
Content-Type: text/xml; charset=UTF-8
ETag: ckkcnAejDTcF+4d0Kj6kftZuq+0
Last-Modified: Tue, 30 Jul 2013 19:56:16 GMT
Content-Encoding: gzip
Transfer-Encoding: chunked
Date: Tue, 30 Jul 2013 19:58:11 GMT
Expires: Tue, 30 Jul 2013 19:58:11 GMT
Cache-Control: private, max-age=0
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Server: GSE

如果它支持 CORS,您应该Access-Control-Allow-Origin在那里看到一个标题

于 2013-07-30T20:02:56.173 回答