Javascript 如何在jQuery ajax调用中将JSON响应解析为JSONP?
我正在处理todoist API(),并使用以下命令发出jquery ajax get请求以获取一些数据:Javascript 如何在jQuery ajax调用中将JSON响应解析为JSONP?,javascript,jquery,json,ajax,jsonp,Javascript,Jquery,Json,Ajax,Jsonp,我正在处理todoist API(),并使用以下命令发出jquery ajax get请求以获取一些数据: var url = "https://todoist.com/API/v7/sync"; var data = { 'token' : token, 'resource_types' : '["all"]', }; $.ajax({ url: url, data: data, type: 'GET', dataType: 'jso
var url = "https://todoist.com/API/v7/sync";
var data = {
'token' : token,
'resource_types' : '["all"]',
};
$.ajax({
url: url,
data: data,
type: 'GET',
dataType: 'jsonp',
success: function(response) {
console.log(response);
},
error: function(response) {
console.log('error');
},
});
现在,当我得到响应时,我得到了错误
为什么??因为根据()jQuery需要一个jsonp格式的响应,但它返回json
我一直在研究如何解决这个问题,答案是:“以jsonp格式返回数据”。。好。这是一个外部API,它们不在JSONP中提供数据。有没有一种方法可以重写返回的函数并解析这个JSON数据?您的数据类型应该是
JSON
,而不是jsonp,正如elektronik指出的那样,数据类型应该是JSON
,而不是jsonp
。代码如下所示
var token = "your token"
var url = "https://todoist.com/API/v7/sync";
var data = {
'token' : token,
'resource_types' : '["all"]',
};
jQuery.ajax({
url: url,
data: data,
type: 'GET',
dataType: 'json',
success: function(response) {
console.log(response);
},
error: function(response) {
console.log('error');
},
});
是否定义了token
?链接文档建议使用POST
request“同步API请求应在HTTP POST(应用程序/x-www-form-urlencoded)中进行。同步API响应(包括错误)将以JSON返回。”?已定义,是正确的。我自己测试了一下。。。非常感谢。
var token = "your token"
var url = "https://todoist.com/API/v7/sync";
var data = {
'token' : token,
'resource_types' : '["all"]',
};
jQuery.ajax({
url: url,
data: data,
type: 'GET',
dataType: 'json',
success: function(response) {
console.log(response);
},
error: function(response) {
console.log('error');
},
});