小编典典

responseXML始终为null

ajax

我使用firefox 3.6.10和firebug进行调试

所以,这是我的代码:

var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", url,false);
xmlhttp.setRequestHeader('Content-Type',  'text/xml');
xmlhttp.send(null);
alert(xmlhttp.responseXML);

responseXML 始终为null,我已经尝试了来自不同域的多个URL。我也异步地尝试过,结果是一样的。该 responseText的
总是正确返回,与它没有任何问题。

我的目标是获取 responseXML.documentElement

谢谢你的帮助。

编辑-----------
此javascript代码是从Greasemonkey用户脚本执行的,我使它的URL与请求的URL相同。我也尝试从Firebug控制台执行,再次确保源策略。两者相同。
讨厌JavaScript。


阅读 253

收藏
2020-07-26

共1个答案

小编典典

我敢打赌,您违反了相同的原产地政策。

对于XHR,您必须具有相同的协议,域,端口等。因此,如果您在localhost:8080 /
app上运行应用程序,则不能使用ajax来访问www.cnn.com

不同的浏览器对此处理方式有所不同。我见过FF按照您的描述去做,这是请求似乎正常返回,但是没有数据…

2020-07-26