Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript getJSON意外令牌错误_Javascript_Jquery_Ajax_Json_Jsonp - Fatal编程技术网

Javascript getJSON意外令牌错误

Javascript getJSON意外令牌错误,javascript,jquery,ajax,json,jsonp,Javascript,Jquery,Ajax,Json,Jsonp,我正试图从美国地质勘探局获取地震数据,但我不断得到错误: 未捕获的语法错误:意外标记: $.getJSON( "http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojson&callback=?", function(data) { console.log(data); } ); 我尝试了使用jsonp格式的$.ajax,我一直遇到同样的问题。我也尝试在url末尾不

我正试图从美国地质勘探局获取地震数据,但我不断得到错误:

未捕获的语法错误:意外标记:

$.getJSON(
   "http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojson&callback=?",
    function(data) {
       console.log(data);
    }
 );
我尝试了使用jsonp格式的$.ajax,我一直遇到同样的问题。我也尝试在url末尾不回调,在这种情况下,我得到了错误:

MLHttpRequest无法加载。访问控制不允许原点允许原点。

$.getJSON(
   "http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojson&callback=?",
    function(data) {
       console.log(data);
    }
 );

如果这种方法不可行,有人能帮助我如何获取数据或jQuery以外的其他信息吗?

最简单的解决方法是告诉服务您需要jsonp,然后使用服务提供的回调

window.eqfeed_callback = function(data){
    console.log(data);
};
//$.getScript("http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojsonp");
var s = document.createElement("script");
s.src = "http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojsonp";
document.getElementsByTagName("head")[0].appendChild(s);

绕过它最简单的方法是告诉服务您想要jsonp,然后使用服务提供的回调

window.eqfeed_callback = function(data){
    console.log(data);
};
//$.getScript("http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojsonp");
var s = document.createElement("script");
s.src = "http://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojsonp";
document.getElementsByTagName("head")[0].appendChild(s);

使用他们的JSONP服务


使用他们的JSONP服务


该服务没有将calback函数名包装在数据周围。确定他们有jsonp支持吗?此服务不提供jsonp,只提供常规JSON。由于您位于不同的域,因此无法通过客户端直接访问此服务。您需要在自己的域上设置代理。该服务没有将calback函数名包装在数据周围。确定他们有jsonp支持吗?此服务不提供jsonp,只提供常规JSON。由于您位于不同的域,因此无法通过客户端直接访问此服务。你需要在自己的域名上设置一个代理。先生,你太棒了!我正要实现一个php代理。你真是太棒了!我正要实现一个php代理。