我正在向以下 URL 发出请求 - 发布 https://api.github.com/repos/kvimal/2048/issues 使用我的令牌作为授权标头。
卷曲请求
curl -i -X POST https://api.github.com/repos/kvimal/2048/issues -d "{title:'hey'}" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxx" -H "Content-Type: application/json"
并且 GitHub 发送响应 404 未找到。我已经阅读了文档,据我观察,我是按照 github 标准来做的。谁能帮忙解决这个问题吗?
如这个 python 脚本所示,标题应该使用 '
token
' 而不是 Bearer
'
headers = {
'Content-Type':'application/json',
'Authorization': 'token %s' % token,
}
(该脚本不使用curl,但给出了标题的想法)
对于curl查询,请参阅此curl POST教程:
curl -H "Authorization: token OAUTH-TOKEN"
POST 消息也必须完整(如这个 python 脚本)
issue = {'title': title,
'body': body,
'assignee': assignee,
'milestone': milestone,
'labels': labels}
# Add the issue to our repository
r = session.post(url, json=issue)
(再次强调,不是卷曲,而是给你一个身体的例子)
转到“编辑个人访问令牌”页面,查看“选择范围”会话。
确保令牌已被授予所需的访问权限。
在尝试使用“授权:令牌...”标头创建公共存储库时,我遇到了类似的情况。
我现在好想尖叫!
如果在 graphql url 末尾留下额外的斜杠,那么你将收到 404 错误。
https://api.github.com/graphql是安全的
https://api.github.com/graphql/ 是一个 404 错误,没有详细信息。
我花了过去 2 个小时才知道我的令牌、标头或查询没有错误,而且我是对的!地狱的那一小截将会结束你......
首先,github 的 url 文档非常具有误导性。 我正在尝试使用此网址来创建存储库或列出所有存储库:
https://api.github.com/orgs/{ORG}/repos // GET Request to see all repos & POST Request to create one
我什至尝试了
https://api.github.com/users/{MY_USERNAME}/repos
,但我遇到了 404 未找到错误。
好吧,我需要说正确的网址是:
https://api.github.com/user/repos
您可以发送 GET 请求来查看当前用户的所有存储库,也可以发送 POST 请求来创建存储库。您不需要在网址中提及您的用户名,它会通过提供的令牌检测用户