Github API 创建问题返回 404 未找到

问题描述 投票:0回答:4

我正在向以下 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 标准来做的。谁能帮忙解决这个问题吗?

github-api
4个回答
11
投票

如这个 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)

(再次强调,不是卷曲,而是给你一个身体的例子)


8
投票

转到“编辑个人访问令牌”页面,查看“选择范围”会话。

确保令牌已被授予所需的访问权限。

在尝试使用“授权:令牌...”标头创建公共存储库时,我遇到了类似的情况。


0
投票

我现在好想尖叫!

如果在 graphql url 末尾留下额外的斜杠,那么你将收到 404 错误。

https://api.github.com/graphql是安全的

https://api.github.com/graphql/ 是一个 404 错误,没有详细信息。

我花了过去 2 个小时才知道我的令牌、标头或查询没有错误,而且我是对的!地狱的那一小截将会结束你......


0
投票

首先,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 请求来创建存储库。您不需要在网址中提及您的用户名,它会通过提供的令牌检测用户

© www.soinside.com 2019 - 2024. All rights reserved.