当我在本地服务器上下载xml文件时,我从xml文件获取数据它工作正常,但是当我提供xml文件的在线路径时,它无法正常工作。我读到了一些关于我认为这是一个跨域问题的内容,但是如何在html中调用crossdomain文件。
<script type="text/javascript">
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","http://www.mydomain.com./myfile/xml_9646.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
</script>
答案 0 :(得分:1)
如果服务器实现CORS,您可以
https://stackoverflow.com/a/10083975/295783
$(document).ready(function() {
jQuery.support.cors = true; // IMPERATIVE for IE(8) support
$.ajax({
type: "GET",
url: "http://itunes.apple.com/au/rss/topfreeapplications/limit=10/xml?partnerId=1002&partnerUrl=http%3A%2F%2Fwww.s2d6.com%2Fx%2F%3Fx%3Dc%26z%3Ds%26v%3D3868801%26t%3D",
dataType: "xml",
success: function(xml) {
$(xml).find('...').each(function(){
var id = $(this).find("...").text();
// ....
});
}
});
});
答案 1 :(得分:0)
如果您可以控制域的后端,那么您可能会拥有类似PHP to read the remote XML的内容。您的服务器将充当JS代码和远程XML的桥/代理。自JS can't talk over other domains起,您就会要求您的服务器(在您的域中)为您阅读。