我只是想用angularjs http在itunes search api上做一个基本的调用。
$http.jsonp("http://itunes.apple.com/search", {params:{"term":"jack+johnson"}})
.success(function (data, status, headers, config) {
console.log("is scope : " + data);
}).error(function (data, status, headers, config) {
console.log("error" + status);
});请求做得很好(状态:200),我可以看到json被检索到了,这是一个摘录:
{
"resultCount":50,
"results": [
{"wrapperType":"track", "kind":"song", "artistId":909253, "collectionId":120954021, "trackId":120954025, "artistName":"Jack Johnson", "collectionName":"Sing-a-Longs and Lullabies for the Film Curious George", "trackName":"Upside Down", "collectionCensoredName":"Sing-a- Longs and Lullabies for the Film Curious George", "trackCensoredName":"Upside Down", "artistViewUrl":"https://itunes.apple.com/us/artist/jack-johnson/id909253?uo=4", "collectionViewUrl":"https://itunes.apple.com/us/album/upside-down/id120954021? i=120954025&uo=4", "trackViewUrl":"https://itunes.apple.com/us/album/upside-down/id120954021? i=120954025&uo=4", ....但是在json结果的第一行("resultCount":50),我有一个js错误:"Uncaught :Uncaught:“。
我尝试使用transformResponse,但以前出现过错误。
谢谢
发布于 2012-12-19 23:57:06
您忘记添加回调函数(JSON_CALLBACK):
app.controller('Ctrl', function($scope, $http) {
$http.jsonp("http://itunes.apple.com/search", {
params: {
"callback": "JSON_CALLBACK",
"term": "jack+johnson"
}
}).success(function(data, status, headers, config) {
console.log("is scope : " + data);
}).error(function(data, status, headers, config) {
console.log("error" + data);
});
});来自angularjs $http.jsonp documentation
url {字符串}-指定请求目标的相对或绝对
。应包含JSON_CALLBACK字符串。
https://stackoverflow.com/questions/13954729
复制相似问题