我想从另一个用我的gist令牌登录的网站更新Gist。我无法正常工作。我设法通过GET获得要点,但是用PATCH更新要点不起作用。
我认为身份验证没有问题,因为获取要点时,我的用户名和个人资料会正确显示。
JavaScript(JQuery):
$.ajax({
url: 'https://api.github.com/gists/e3e0b182c09bf333593c',
type: 'PATCH',
beforeSend: function(xhr) {
xhr.setRequestHeader("Authorization","token f32e-----MY-TOKEN-(GIST-ACCESS)-----6f44");
}, data: {
"description":"Edit gist",
"files":{
"annexation.json":{
"content":"{\"updated content\":\"from Ajax\"}"
}
}
}
}).done(function(response) {
$('#write').text(JSON.stringify(response));
});
我不断收到错误400(错误请求)。
响应:
{
"message": "Problems parsing JSON",
"documentation_url": "https://developer.github.com/v3/gists/#edit-a-gist"
}
有人可以指出我做错了什么吗?非常感谢。
最佳答案
好吧,经过一番摆弄之后,这一直是问题所在:
数据应该是字符串,而不是对象。
data: '{"description":"Edit gist","files":{"annexation.json":{"content":"{\"updated content\":\"from Ajax\"}"}}'