【发布时间】:2012-03-16 10:30:59
【问题描述】:
我需要进行 JSONP 调用。
Ajax 函数调用:
$.ajax({
url: myPath,
dataType: 'jsonp',
success: function(data) {
alert("hello");
}
});
getJSON 函数调用:
$.getJSON(myPath + '&callback=prova?', function(data) {
alert("hello");
});
使用 getJSON(使用 &callback=prova 设置 JSONP 协议)我收到错误 200。 .ajax() 也可以。为什么?我想在这里使用getJSON...
【问题讨论】:
-
查询字符串末尾的问号看起来不对。
-
AFAIK 代码 200 不应该是错误,see here)
-
您是否在服务器端检查了两种情况下都发出了相同的请求?如果是你的服务器,你应该能够在日志中找到 URL,否则你总是可以求助于网络嗅探。
-
@themarcuz 在检索 JSONP 时,您有时会看到请求的 200 OK HTTP 代码,但浏览器会给您一个 XSS 错误,因为它会阻止数据被处理。
-
哦,是的,200 应该不是错误。您的样本不包括任何状态/错误检查。你能展示你的实际测试代码吗?