【发布时间】:2013-04-27 00:46:06
【问题描述】:
我可能在这里遗漏了一些东西,但我无法使这个 JSONP 请求工作,这里是代码:
var url = 'http://' + server + '?callback=JSON_CALLBACK';
$http.jsonp(url)
.success(function(data){
console.log('success');
})
.error(function () {
console.log('error')
});
请求触发正常,我收到以下格式的响应(带有标头 Content-Type:application/json):
[{"id": "1", "name": "John Doe"},
{"id": "2", "name": "Lorem ipsum"},
{"id": "3", "name": "Lorem ipsum"}]
你能看出什么不对吗?也许我应该从服务器返回的格式不正确? 除了我设置的错误消息('error')之外,Angular 触发错误回调没有任何错误消息。
【问题讨论】:
-
你能发一个 Plunker 吗?
-
你在 fiddler 或 firebug 中看到了什么反应
-
响应看起来不对,应该是对请求指定的回调函数的函数调用
-
@joakimbl 是正确的。那不是 JSONP,那只是 JSON。您的响应应该是一个 javascript 文件,其对象字面量在以您传递的回调命名的函数内返回。