当尝试执行XMLHttpRequest时,响应从服务器返回(在Fiddler中检查),但xhr.getAllResponseHeaders()返回null并抛出异常。
是因为“同源政策”吗?你能建议一下如何解决这个问题吗?
代码:使用datajs.codeplex.com开源代码:
xhr.onreadystatechange = function () {
if (xhr === null || xhr.readyState !== 4) {
return;
}
// Workaround for XHR behavior on IE.
var statusText = xhr.statusText;
var statusCode = xhr.status;
if (statusCode === 1223) {
statusCode = 204;
statusText = "No Content";
}
var headers = [];
var responseHeaders = xhr.getAllResponseHeaders().split(/\r?\n/);资源位于不同的域中。访问http://odata.netflix.com/v1/Catalog/Genres
发布于 2011-02-10 20:04:07
如果同源策略是您的问题,您可以使用YQL作为代理。
更好的是,您可以要求以json格式获取结果,并从客户端脚本轻松地使用它。
发布于 2011-02-10 20:07:02
要绕过同源策略,您可以使用JS调用一个PHP脚本,该脚本获取外部url的内容并对结果执行echo。
https://stackoverflow.com/questions/4955922
复制相似问题