如何将此curl请求正确转换为jquery $.ajax()
调用?
这是卷曲请求:
curl https://<api token>:@api.inboxapp.com/n/<namespace id>/threads?tag=unread
以下是我尝试翻译它导致授权错误:
$.ajax({
url: 'https://api.inboxapp.com/n/'+namespaceResults['id']+'/threads?tag=unread',
dataType: 'json',
method: 'GET',
success: function(threadsResults){
console.log(threadsResults);
}
});
我不知道在哪里放api令牌。我尝试了这个,但得到了同样的错误:
$.ajax({
url: 'https://api.inboxapp.com/n/'+namespaceResults['id']+'/threads?tag=unread',
dataType: 'json',
method: 'GET',
data:{
'api_token':apiToken
},
success: function(threadsResults){
console.log(threadsResults);
}
});
我的主要问题是弄清楚如何正确传递apiToken身份验证标头。我该怎么做?
答案 0 :(得分:0)
您需要对数据进行字符串化。有时需要contenttype
$.ajax({
url: 'https://api.inboxapp.com/n/'+namespaceResults['id']+'/threads?tag=unread',
dataType: 'json',
contentType: 'application/json; charset=utf-8',
method: 'GET',
data: JSON.stringify( {
'api_token':apiToken
}),
success: function(threadsResults){
console.log(threadsResults);
}
});
根据inbox.app,api令牌应该以用户名发送:
$.ajax({
url: 'https://api.inboxapp.com/n/'+namespaceResults['id']+'/threads?tag=unread',
dataType: 'json',
contentType: 'application/json; charset=utf-8',
method: 'GET',
username: apiToken,
success: function(threadsResults){
console.log(threadsResults);
}
});