我想使用GitHub API创建要点。我尝试了POST ajax请求:
var gist = {
"description": "Avatars",
"public": true,
"files": {
"check.txt": {
"content": "Avatars list..."
}
}
};
$.ajax({
url: 'https://api.github.com/gists',
type: 'POST',
dataType: 'json',
data: JSON.stringify(gist),
success: function(e) {
console.log(e);
},
error: function(e) {
console.error("Error!: ", e);
}
});
但是我总是收到以下错误:
jquery-3.1.1.min.js:4 POST https://api.github.com/gists 401 (Unauthorized)
有人可以帮助我吗? 谢谢
答案 0 :(得分:2)
要在Github上编辑内容时,需要授权您的请求。通过将用户名和密码添加到请求中或使用oauth令牌。
更多信息可在授权文档中找到:https://developer.github.com/v3/auth/
答案 1 :(得分:1)
由于我最近遇到了相同的问题,所以让我添加T.Todua要求的示例
如果要使用用户名和密码进行身份验证,请在$ .ajax请求中添加以下行:
crossDomain: true,
beforeSend: function (XHR) {
XHR.setRequestHeader(
'Authorization','Basic ' + btoa(Username + ':' + Password)
);
},
但是,如果您为要点创建了访问令牌(请参阅Github help,并且不要忘记检查“要点”权限!),则添加以下几行
crossDomain: true,
headers: {
'Authorization':'bearer ' + GitHubAccessToken
},
创建后,GitHubAccessToken将立即显示一次(并且仅显示一次!),因此请确保将其存储在安全的位置,因为每个知道此访问令牌的人都可以修改您的要旨(直到您再次将其撤销)。