使用GitHub V3 API(REST)创建分支

我正在尝试通过REST使用
GitHub V3 API来交换仓库,但是,我遇到了根据文档(
https://developer.github.com/v3/repos/forks/#create-a-fork)发出POST请求的问题.

基本上,我到目前为止:
  – 具有OAuth令牌的登录用户
  – 对API的POST请求设置(url – https://api.github.com/repos/carmichaelalonso/infiniteflight/forks/) – 我正在使用hurl.it进行测试.
  – 请求中的标题:一个名称为’Authorization’,值为’token …’,另一个名称为’Content-Type’,值为’application / json’
  – 具有以下JSON的正文:'{“organization”:“shortlisthome”}'(shortlisthome是我试图将回购分配给的帐户.

我不打算将其分配给组织,而不是标准用户帐户,这是我感到困惑的地方.当我运行请求时,我没有收到任何身份验证错误或404错误(我之前有过,但我错误地输入了错误的值,导致了这样的错误).

当我运行此请求时,我得到以下结果(422无法处理的请求):

{
"message": "Validation Failed",
"documentation_url": "---url-to-docs---",
"errors": [
{
"resource": "Fork",
"code": "invalid",
"field": "organization"
}
]
}

我不确定我是否能够将其分配给标准用户,或者我的请求是否出错.如果我能提供更多信息,请告诉我(这里的第一篇文章对会议有点不熟悉).
谢谢!

最佳答案 为了让
shortlisthome分叉存储库,您需要进行身份验证.您尝试分叉
is public的存储库,所以您需要做的就是为shortlisthome获取OAuth令牌,然后向您现在制作的那个发出类似的请求.唯一的区别是您不需要提供{“organization”:“shortlisthome”}的JSON主体.

对于它的价值,当您是具有适当权限的组织的成员并且您希望将存储库分叉到该组织时,可选的JSON主体供您使用.除非您经过身份验证,否则无法将存储库分叉到其他人的帐户.

点赞