我正在尝试设置一个在本地文件系统上运行并调用XML文件的网站,但我收到了访问控制原因错误:
Access-Control-Allow-Origin不允许使用原点。
我尝试将数据类型切换为jsonp并将crossdomain设置为true:
$j.ajax({
crossdomain: true,
url: 'xml/vehicles.xml',
dataType: "jsonp",
success: function( vehicleXML ) {
supertree.parseVehicles($j(vehicleXML).find("vehicles"), null);
supertree.vehiclesLoaded = true;
if(supertree.scenesLoaded) supertree.ready();
}
});
但它不起作用。有关如何实现这一点的任何想法?最好没有代理?
答案 0 :(得分:2)
Same origin policy阻止您访问数据。您要求数据的服务器需要启用CORS,或者您需要在服务器上使用代理来从其他服务器获取数据。
其他选项是将XML数据更改为JSONP格式。它并不像告诉jQuery发出JSONP请求那么容易。数据格式完全不同,服务器必须返回该格式,JavaScript无法做任何事情。