我在使用codepen时遇到了一些麻烦,我试图让用户所在位置天气晴朗,而且我没有获得经纬度,并且无法获取getJSON来检索任何来自请求的URL的JSON。这是代码:
https://codepen.io/martini-alessandro/pen/VmGqyo
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(getWeather);
} else {
alert("Your Web Browse does not support geolocation.");
}
};
function getWeather(position) {
var baseURL = "api.openweathermap.org/data/2.5/weather?";
var apiKey = "2ca568839db1b37c90c1d38842418e08";
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
var urlRequest = baseURL + "lat=" + latitude + "&lon=" + longitude + "&APPID=" + apiKey;
//alert(urlRequest);
$.getJSON(urlRequest, function(json) {
alert(json);
});
};
答案 0 :(得分:1)
我也有这个问题。事实证明,codepen会阻止某些http请求。如果您在网址的开头添加“https://crossorigin.me/https://”,则会将其路由到交叉原点,然后返回您的JSON数据,前提是其他代码都是正确的。