2

我是 Javascript 新手。我需要使用另一个服务器的 javascript 或 jQuery 解析 XML。我尝试使用以下代码。但是当我执行它时,它不会成功。

我能够解析同一文件夹中的 XML。是否可以在 javascript 中访问来自另一台服务器的内容。我阅读了同源政策。

我能够获得成功消息,但无法获得 xml 数据

$.ajax({

type: 'GET',
url: 'http://10.47.5.69/myxml.xml',  
dataType: "xml",

success: function(data){
    alert('success');
    $(data).find("Node").each(function() {

         alert($(this).find("element").text());
        });
    },
    error: err  
});

function err(xhr, reason, ex)
{
    alert('xhr.status: ' + xhr.status);
    alert('ex "'+ex);
}
4

1 回答 1

1

由于跨域安全检查,您无法从另一台服务器加载某些内容。

但是对于 javascript,有一种解决方法:JSONP 技术:http ://en.wikipedia.org/wiki/JSONP

它用于 JSON 数据,但也可以用于任何字符串数据。但只有在您对该服务器有一定程度的控制(即可以安装脚本)时,它才会起作用。

另一种选择是在您自己的服务器上代理该 URL。那可能更容易。

于 2012-04-04T08:22:33.643 回答