如何使用github api为回购加注星标

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

我尝试使用github api为回购邮件加注星标:

curl -X PUT -H "Authorization: token *****************"     https://api.github.com/user/starred/fulldecent/system-bus-radio

但反应总是如此

{
 "message": "Not Found",
 "documentation_url": "https://developer.github.com/v3"
}

我也尝试alamofire

Alamofire.request(.PUT, "https://api.github.com/user/starred/"+repoFullName, headers: ["Authorization": "token \(token)"]).responseJSON{ response in
    ......
}

但我仍然无法完成它

swift api curl github
2个回答
0
投票

有几个原因导致您出现404“未找到”错误。

第一个原因当然是您尝试使用的端点不存在,但是从docs看起来您似乎正确使用它。

此外,即使出现授权错误,GitHub API也会返回404,而不是像预期的那样返回403(请参阅documentation)。您尝试使用的令牌可能无效,或者用户无权访问该存储库,或者令牌与用户不匹配,或任何其他可能的授权问题。


0
投票

如果你想使用put,你需要在授权时授予repo范围的权限。

例如,当使用oauth github时。

第1步:Create your oauth github app

第2步:你有client_id,把这个源链接放在你的应用程序中,用户从github https://github.com/login/oauth/authorize?scope=user:email&client_id=<client_id>&scope=repo 到oauth步骤3:当callBackUrl时,按照这个获取访问令牌

https://developer.github.com/v3/guides/basics-of-authentication/#providing-a-callback

最后一步:你可以通过传递?access_token = xxxxxxxxxx来做主演

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