我厌倦了使用jquery.ajax()从api获取数据并且正常工作
这是代码:
$.ajax({
url: "http://api.somesite.com/api?format=json",
type: "GET", //it works with POST as well
dataType: 'jsonp',
})
.done(function( data ) {
if ( console && console.log ) {
console.log( "Sample of data:", data );
}
});
现在我想对angularjs做同样的事情,所以我做了以下
首先我这样做了:
var req = {
method: 'GET',
url: "http://api.somesite.com/api?format=json",
headers: {
'Content-Type': "application/json",
},
}
$http(req).then(function(response){
console.log(response.data);
});
我在控制台中得到了这个:
XMLHttpRequest cannot load http://api.somesite.com/api?format=json. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access.
然后我尝试了这个:
$http.jsonp('http://api.somesite.com/api?format=json', {
headers: {
"content-type":"application/json",
"Accept" : "application/json"
}}).success(function(data, status) {
console.log(status);
console.log(data);
}).
error(function(data, status) {
console.log(status);
console.log(data);
});
我收到错误代码 404 ,数据为未定义
请告诉我们如何完成。我没有访问服务或api所以我无法以任何方式修改api。