如何通过GitHub API列出用户的GitHub存储库
我试图通过GitHub API列出用户的私有存储库。我现在对GitHub的请求如下:
https://api.github.com/users/username/repos?sort=updated&direction=desc&visibility=all
它确实返回用户的存储库,但不返回私有存储库。 最初,我认为问题出在我的OAuth令牌上的scopes选项。 我的应用程序中目前有以下设置。
'user',
'repo',
'repo_deployment',
'admin:repo_hook',
'admin:org_hook',
但是,即使我在dev框上设置了所有scope选项,也可以看到所有公共存储库,但看不到用户的私有存储库。 我也尝试过从网址中删除所有参数。 因此,请求如下:
https://api.github.com/users/username/repos
Which again did not return the user's private repositories.
再次没有返回用户的私有存储库。 我正在尝试获取当前用户的私有存储库。 但是只有他们帐户下的那些。
我正在尝试通过GitHub API列出用户的私有存储库。 我正在向GitHub提出的请求如下。 p>
https://api.github.com/users/username/repos?sort=updated&direction=desc& ; visibility = all
code> pre>
它确实返回用户的存储库,但不返回私有存储库。 起初我认为问题出在我的OAuth令牌上的范围选项上。 我目前在我的应用程序中有以下设置。 p>
'user',
'repo',
'repo_deployment',
'admin:repo_hook',
'admin:org_hook',
code> pre>
但即使我在开发框中设置了所有范围选项,我也会看到所有公共存储库,但没有用户私有 那些。 我也尝试从网址中删除所有参数。 所以请求如下。 p>
https://api.github.com/users/username/repos
code> pre>
\ n 它再次没有返回用户的私有存储库。 p>
我正在尝试获取当前用户的私有存储库。 但只有他们帐户下拥有的那些。 p>
div>
You are using the wrong endpoint for this. You are after the following endpoint instead:
https://developer.github.com/v3/repos/#list-your-repositories
https://api.github.com/user/repos
List repositories that the authenticated user has explicit permission (:read, :write, or :admin) to access. The authenticated user has explicit permission to access repositories they own, repositories where they are a collaborator, and repositories that they can access through an organization membership.
I've just tested it and this returns your private repositories.
Hope this helps.
You may have to authorize yourself for permission of listing your private repositories.
Get an OAuth Token from the account (or from the OAuth Authorizations API), then add the token as a GET parameter (in query string ?access_token=OAUTH-TOKEN
) or a HTTP header (Authorization: token OAUTH-TOKEN
) of your request, you may have permission for your need.