我试图使用角度的工厂函数连接到openweather api。但是我得到了404.我的链接是现货,但我猜它失败了,因为api链接前面的plnkr代码
GET http://run.plnkr.co/65ULuFbF2mV8fL2X/api.openweathermap.org/data/2.5/weather?q=London 404 (Not Found)
可在此处找到测试文件: http://plnkr.co/edit/wstR9oZdYf24jxjru8vS?p=preview
是否有某种代码或设置可以从通话中移除http://run.plnkr.co/65ULuFbF2mV8fL2X/
?
答案 0 :(得分:0)
OpenWeatherMap api不支持CORS(跨源资源共享)。
您可以查看一下这篇文章,了解您的代码无效的原因:accessing-external-apis-with-angularjs
这意味着OpenWeatherMap API支持CORS。我们可以尝试 通过JSONP访问API。 $ http.jsonp在API上没有 支持CORS,但支持JSONP
我更新了您的plunker以使其正常工作:
LINK: 'http://api.openweathermap.org/data/2.5/weather?q='
in weatherFactory.js
$http.jsonp(config.LINK + city + "&callback=JSON_CALLBACK")