jQuery从不同的域读取xml

时间:2012-02-02 13:04:40

标签: javascript jquery xml proxy

我是新手,请帮助我使用jquery从不同的域读取xml。 请帮帮我。我正在使用下面的代码 -

$(document).ready(function() {
    $.ajax({ 
        type: "GET",  
        url: "xmlname.xml", 
        dataType: "xml", 
        success: parseXml 
    });
}); 

但我希望网址应为http://www.websiteName.com/xmlname.xml

3 个答案:

答案 0 :(得分:0)

您无法从其他域访问资源。这是对Same origin policy的限制。 @ianbarker是正确的,使用JSONP可以让你解决这个限制。


修改

你可以使用这样的代理来代理请求。

<%@ Language=vbScript%>
<%
    Dim xmlhttp 
    Set xmlhttp = Server.Createobject("MSXML2.ServerXMLHTTP")
    xmlhttp.Open "GET", "http://othersite/page.asp", false
    xmlhttp.Send Nothing
    Response.Write xmlhttp.responsexml.xml
    Set xmlhttp = Nothing
%>

答案 1 :(得分:0)

我不知道您使用的服务器端技术。但在.Net MVC中,您需要通过控制器调用数据服务器端,并将其作为json / xml在本地返回。

答案 2 :(得分:0)

创建一个只包含以下内容的asp页面,并将其称为jquery中的远程xml页面。因为它是本地的,你将能够查询它。

Response.Buffer = true

Dim objXMLHTTP,xml,text

设置xml = Server.CreateObject(“Microsoft.XMLHTTP”)  '或者,如果这不起作用,那么试试:  '设置xml = Server.CreateObject(“MSXML2.ServerXMLHTTP”)

xml.Open“GET”,“”,false

的XML.send

text = xml.ResponseText  RESPONSE.WRITE(文本)

设置xml = Nothing