在Charles代理中,我已经捕获了使用curl时发出的成功请求 - 它返回了一些json。我已经整天尝试将其变成ajax电话但却失败了 - 想知道是否有人可以重新审视它?我通过标题向提供此json的服务发送令牌
{
"category": [{
"id": 1,
"name": "aaa",
"description": "anything..."
}, {
"id": 2,
"name": "ccc",
"description": "desc 1111..."
}, {
"id": 3,
"name": "ddd",
"description": "desc..."
}]
}
查尔斯转发用curl做出的好请求
GET /api/v1/category HTTP/1.1
User-Agent curl/7.30.0
Host myurl.com
Accept */*
Authorization Token token=6ff1fed470ec2ddaf8b3af9584619902
原始信息
URL http://myurl.com/api/v1/category
Status Complete
Response Code 200 OK
Protocol HTTP/1.1
Method GET
Kept Alive No
Content-Type application/json; charset=utf-8
Client Address /127.0.0.1
Remote Address myurl.com/23.23.121.64
我的尝试
$.ajax({
beforeSend: function (xhr) { xhr.setRequestHeader ('Authorization', 'Token 6ff1fed470ec2ddaf8b3af9584619902') },
type: "GET",
url: "http://myurl.com/api/v1/category",
dataType: "json"
}).done(function( msg ) {
console.log( msg );
}).fail(function(jqXHR, textStatus, errorThrown) {
console.log( "Request failed: " + textStatus );
console.log( errorThrown );
});
提前感谢!
答案 0 :(得分:0)
您尚未针对您的尝试发布诊断信息,因此我只想从您的代码中猜测。
您发送
Authorization: Token 6ff1fed470ec2ddaf8b3af9584619902
,但是
Authorization: Token token=6ff1fed470ec2ddaf8b3af9584619902
来自curl-note token=
。
您必须确保http://myurl.com/api/v1/category
支持cross-origin resource sharing或与执行该JavaScript代码的页面位于同一位置(域)。
如果这些没有帮助,请发布您收到的任何错误消息。