我正在尝试从dark sky api获取天气数据,但我一直收到cors错误。下面是我的代码:
var url = `https://api.darksky.net/forecast/febb2871126cd24613f32a79c32d4158/${lat},${lon}`;
axios.get(url, config).then(response => {
this.setState({
...
})
}).catch(function (error) {
console.log(error);
});我收到一个错误:"XMLHttpRequest无法加载https://api.darksky.net/forecast/febb2871126cd24613f32a79c32d4158/38.5815719,-121.4943996。请求的资源上不存在'Access-Control-Allow- Origin‘头。因此不允许访问源'https://ebcperez.github.io’。“
发布于 2018-10-17 13:17:25
我也有同样的问题,但我解决了
像这样:"https://cors-anywhere.herokuapp.com/http://samples.openweathermap.org/data/2.5/forecast?appid={your_Api_key}“
或https://api.openweathermap.org/data/2.5/forecast?appid=
所以我不知道url会不会出现错误
发布于 2016-12-19 11:00:15
看起来Darksky API服务器不允许CORS,所以你不能从你的浏览器发出这个请求。
一种可能的解决方案是从应用程序服务器发出API请求,然后将其显示在前端。
发布于 2020-03-02 20:12:41
以下是为什么会发生这种情况的解释。tl;dr将使用CORS代理来处理您的请求。将https://cors-anywhere.herokuapp.com/添加到您的API的URL。https://cors-anywhere.herokuapp.com/http://api.openweathermap.org...
我希望这对你有用
https://stackoverflow.com/questions/41215140
复制相似问题