我想用AngularJS的$ http服务请求Dailymotion API,但它似乎不像jQuery那样工作。
var url = 'https://api.dailymotion.com/videos?fields=id,audience,onair&ids=xzttq2_c,xrw2w0';
jQuery.ajax({
type: 'GET',
url: url,
dataType: 'jsonp',
success: function(data) {
console.log('Success', data);
},
error: function(data) {
console.log('Error', data);
}
});
使用jQuery,它工作正常。我不必使用回调。
Success
Object {page: 1, limit: 10, explicit: false, has_more: false, list: Array[2]}
$http({
method: 'jsonp',
url: url,
responseType: "json"
}).
success(function (data) {
console.log('Success', data);
}).
error(function (data) {
console.log('Error', data);
});
但是对于Angularjs来说,它并不像我预期的那样有效。
Uncaught SyntaxError: Unexpected token :
答案 0 :(得分:7)
将此添加到您的网址:&callback=JSON_CALLBACK
。
来自jQuery'ajax
方法documentation:
“jsonp”:使用JSONP在JSON块中加载。添加额外的“?callback =?”至 您的网址末尾指定回调。