Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.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/6/multithreading/4.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 Ajax请求失败_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript Ajax请求失败

Javascript Ajax请求失败,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在尝试对提供天气数据的api执行AJAX请求,由于某些原因,请求一直失败。我尝试使用.fail()回调来获取错误消息;函数被调用,但它只给我空字符串来处理 这是我正在使用的代码 navigator.geolocation.getCurrentPosition(function(position){ long = position.coords.longitude; lat = position.coords.latitude; console.log(long); console.log(

我正在尝试对提供天气数据的api执行AJAX请求,由于某些原因,请求一直失败。我尝试使用.fail()回调来获取错误消息;函数被调用,但它只给我空字符串来处理

这是我正在使用的代码

navigator.geolocation.getCurrentPosition(function(position){

long = position.coords.longitude;
lat = position.coords.latitude;
console.log(long);
console.log(lat);

url = "http://api.openweathermap.org/data/2.5/weather?lat=" + encodeURIComponent(lat) + "&lon=" + encodeURIComponent(long) + "&APPID=" + encodeURIComponent(apikey);

console.log(url);

$.getJSON(url, function(response){
console.log("Success");
console.log(response);
}).fail(function(obj, stat, err){ console.log(err)});

});

我在控制台上得到的url完全符合api的标准,从一开始就一直到“http”。我已经确定经度和纬度也被正确提取了。如果您有任何见解,我们将不胜感激。

效果良好,请查看此示例。我将更改我的api,所以请确保在我更改它之前检查它

尝试粘贴
console.log(url)的结果到浏览器并检查是否获得所需的输出。因为我认为您的
API中存在问题

函数func(){
lat=37;
lon=53;
apikey=“您的API”;
url=”http://api.openweathermap.org/data/2.5/weather?lat=“+encodeURIComponent(lat)+”&lon=“+encodeURIComponent(lon)+”&APPID=“+encodeURIComponent(apikey);
console.log(url);
$.getJSON(url、函数(响应){
控制台日志(“成功”);
控制台日志(响应);
}).fail(函数(obj、stat、err){console.log(err)});
}
func()

忽略任何未初始化的或看似全局的变量,在代码运行之前,它们都会在不同的段中进行排序。令人惊讶的是,您的代码段工作正常,而我的代码段仍然拒绝。您是否检查了您的APIs或在浏览器上尝试了您的url?这似乎是codepen内部的问题。谢谢你的帮助:)。