Ruby on rails 检查用户是否是Github项目的合作者

Ruby on rails 检查用户是否是Github项目的合作者,ruby-on-rails,ruby,github,github-api,Ruby On Rails,Ruby,Github,Github Api,我有一个rails应用程序,需要检查特定用户是否是Github项目的合作者,以及特定用户可以提交的Github项目列表。这是为了验证他们是否可以提交项目(例如,是管理员或拥有推送权限),并帮助他们选择可以提交的项目 我尝试将rails gem“omniauth github”与github API[1]结合使用,但似乎需要一个repo所有者来验证用户的协作者状态 GET /repos/:owner/:repo/collaborators/:username 您能否推荐如何检查用户是否是使用Gi

我有一个rails应用程序,需要检查特定用户是否是Github项目的合作者,以及特定用户可以提交的Github项目列表。这是为了验证他们是否可以提交项目(例如,是管理员或拥有推送权限),并帮助他们选择可以提交的项目

我尝试将rails gem“omniauth github”与github API[1]结合使用,但似乎需要一个repo所有者来验证用户的协作者状态

GET /repos/:owner/:repo/collaborators/:username
您能否推荐如何检查用户是否是使用Github API和omniauth Github gem的项目的合作者?理想情况下,用户将授权应用程序获取一份回购协议列表,其中该用户是所有者/合作者,而不需要用户授权应用程序进行更改(我不需要如此强大的权限)

谢谢


[1]

开发者需要授权您的应用程序代表其访问Github。以下是有关设置身份验证的信息:

您可以通过获取个人Oauth令牌进行测试。查看用户可以提交的公共回购的查询为:

curl-H“授权:令牌OAUTH-token”

更新:

要通过github_api gem访问相同内容,请使用:

Github.new oauth_token: current_user.credentials.token
repo_data = github.repos.list(type: 'public')

谢谢我可以在用户是所有者的情况下获取repo,但不能在用户有提交访问权或是协作者的情况下获取所有repo的列表。我正在使用github_api gem。你找到解决方案了吗?我也在寻找它:(是的。如果你想看到实现,这个项目是开源的。你还需要在配置文件@julien herrI对ruby不是很熟练:/http请求是如何检查一个没有项目权限的用户的?