Javascript XML http请求无法从服务器打开RSS文件,XML状态=0
我正在尝试使用javascript解析RSS提要,最近在从localhost和web服务器打开XML文件时遇到了一个问题(在localhost上工作时,我总是使用http://关键字访问本地文件)。在所有浏览器中,我收到的是XML状态0,而不是状态200(已建立)。只有当我试图打开托管在服务器上的XML文件时,问题才会出现。以下是我所拥有的:Javascript XML http请求无法从服务器打开RSS文件,XML状态=0,javascript,xml,rss,xmlhttprequest,xml-parsing,Javascript,Xml,Rss,Xmlhttprequest,Xml Parsing,我正在尝试使用javascript解析RSS提要,最近在从localhost和web服务器打开XML文件时遇到了一个问题(在localhost上工作时,我总是使用http://关键字访问本地文件)。在所有浏览器中,我收到的是XML状态0,而不是状态200(已建立)。只有当我试图打开托管在服务器上的XML文件时,问题才会出现。以下是我所拥有的: if(window.ActiveXObject)//IE xml_req = new ActiveXObject("Microsoft.XMLHT
if(window.ActiveXObject)//IE
xml_req = new ActiveXObject("Microsoft.XMLHTTP");
else if(window.XMLHttpRequest)
xml_req = new XMLHttpRequest();
else alert('no ajax support');
xml_req = new XMLHttpRequest();
var url = "http://www.something.net/rss.xml";
xml_req.open("GET", url, true);
xml_req.onreadystatechange = function(){
if(xml_req.readyState == 4){
if(xml_req.status == 200){
if(xml_req.responseText != null)
.....//DO STUFF
else{
alert("Error");
return false;
}
}
else{
//THIS IS WHERE THE ERROR OCCURS,STATUS=0 INSTEAD OF 200
alert("XML Status = " + xml_req.status + xml_req.statusText);}
}
}
当我打开一个不在服务器上托管的XML本地文件时,一切正常。例如,下面的代码可以很好地打开本地主机中的rss文件:
var url = "rssLocalhost.xml";
xml_req.open("GET", url, true);
请帮忙!非常感谢任何人的建议。谢谢 谢谢你。您需要通过自己的服务器代理数据,或者使用JSON-P数据源。这非常有用,谢谢您的回答。所以,如果我试图使用来自JSON-P数据源的数据,那么数据将是原始XML还是必须更改解析器中的一些代码?(因为我的解析器目前只解析XML文件)如果您有一个JSON-P数据源,那么它将是JSON-P,而不是XML。是的,如果我使用JSONP,看起来会容易得多,但这对我来说是一个很好的体验:)