我正试图从这个网站获取Json格式数据.. http://www.livetraffic.sg/feeds/json
但是当我使用ajax时...我在Chrome控制台中遇到了这个特殊错误。
错误:无法加载XMLHttpRequest。 Access-Control-Allow-Origin不允许使用null。
外部网站是否阻止我使用信息?
感谢您的帮助!!!
我的代码示例:
url = "http://www.livetraffic.sg/home2/get_erp_gantry";
$().ready(function(){
$.get(resturl, function(data) {
//do something here with data
});
});
答案 0 :(得分:2)
这是您的浏览器强制实施同源政策。您不能向您提取脚本的域以外的域发出请求。
您必须在与提供脚本的域相同的域上设置一些服务器端代理,并让它提供数据。 (如果有意义的话,你也可以在服务器上缓存这些数据。)
答案 1 :(得分:2)
您无法进行跨域JSON请求。您的浏览器不允许它。如果目标域允许JSONP请求http://en.wikipedia.org/wiki/JSONP#JSONP,那么您将能够使用此解决方法。否则你必须在服务器端发出请求。
答案 2 :(得分:0)
更简单,您可以对包含
的本地php页面执行ajax查询header("Content-type: application/json; charset=utf-8");
echo file_get_contents('http://www.livetraffic.sg/home2/get_erp_gantry');
您必须allow_url_fopen
为真。
答案 3 :(得分:0)
全部谢谢!管理使用服务器端PHP脚本从外部网站下拉Json数据,然后将变量传递给我的javascript:)