我正在尝试访问一个安静的API.这给出了错误.如何克服这个跨域问题?
错误是’Access-Control-Allow-Origin’标头出现在请求的资源上
- function Hello($scope,$http) {
- $http.get('http://api.worldweatheronline.com/free/v1/weather.ashx?q=London&format=json&num_of_days=5&key=atf6ya6bbz3v5u5q8um82pev').
- success(function(data) {
- alert("Success");
- }).
- error(function(data){
- alert("Error");
- });
- }
更好的方法(
fiddle example)是使用
$http.jsonp
.
- var url = 'http://api.worldweatheronline.com/free/v1/weather.ashx';
- return $http.jsonp(url,{
- params: {
- callback: 'JSON_CALLBACK',q: 'London',format:'json',num_of_days: 5,key: 'atf6ya6bbz3v5u5q8um82pev'
- }
- });