我正在尝试制作以下jQuery AJAX JSONP请求:
$.ajax({
type: "GET",
url: apiUrl + currentType + "/" + $(this).val() + "/" + nextType + ".json?jsoncallback=?",
dataType: "jsonp",
success: function (data) {
console.log(jQuery.parseJSON(data))
},
error: function (reqObj, textStatus, error) {
console.log(textStatus, error)
}
});
成功函数永远不会运行,这是来自error
函数的记录数据:
parsererror, message: "jQuery17205679343591909856_1334681898332 was not called"
我不知道为什么这不起作用......
答案 0 :(得分:0)
因此,在一些配置更改后(在API方面),我能够找出我的问题。
首先,为了在API端快速生成我的JSON响应,我正在使用Rails的RABL gem。我将配置示例包含在应用程序的初始化程序中(https://github.com/nesquena/rabl)。 来自Github:
如果禁用了include_json_root,则删除每个根节点 输出中的子项,enable_json_callbacks启用支持 'jsonp'样式回调输出,如果传入的请求有'回调' 参数。
然后,这是我的jQuery(在客户端消费者方面):
$.ajax({
url: apiUrl + currentType + "/" + $(this).val() + "/" + nextType + ".json",
dataType: 'jsonp',
type: "GET",
success: function(data) {
console.log(data);
console.log('Success!');
}
});