python - 使用 GitHub 身份验证在不使用 GitHub API 的情况下查看私有(private)存储库

标签 python github github-api

我已使用 GitHub API 使用 Authorization header 访问私有(private)存储库。这非常有效。但是,我无法看到存储库,即发送对存储库网页的 GET 请求。

假设我要访问的url是

url = 'https://github.com/username/repo'

这是我的私有(private)存储库的链接。我有

headers = {'Authorization': 'token mygithubtoken'}
auth = {'myusername', 'mypassword')

我正在发送如下获取请求

>>> res = requests.get(url, auth=auth, headers=headers)

>>> print(res.status_code)
404

我想这样做,因为拉取请求的差异也无法通过这种方式访问​​,它位于https://github.com/user/repo/pull/pr_no.diff

最佳答案

我联系了 GitHub 支持并得到了答复。我们无法使用 OAuth token 访问该网站。但是,可以通过 API 获得差异:

https://developer.github.com/v3/pulls/#get-a-single-pull-request

您可以传入application/vnd.github.VERSION.diff媒体类型来获取差异。这样我的

url = https://api.github.com/repos/:owner/:repo/pulls/:number

headers = {
    'Authorization': 'token mygithubtoken',
    'Accept': 'application/vnd.github.VERSION.diff',
}

感谢 GitHub 对此的支持!

关于python - 使用 GitHub 身份验证在不使用 GitHub API 的情况下查看私有(private)存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42316916/

相关文章:

github - 我可以通过 API 检索 GitHub PR 审查状态吗?

GitHub API - 获取作者对存储库的评论总数

python - 模拟具有特定返回值的实例方法?

python - 疯狂的多处理日志记录

api - 通过其 API 更新要点

git - 如何在github上自动提交和推送?

github-api - 我可以获得仅限访问单个组织的 Github 访问 token 吗?

python - 如果发生对话则过滤掉用户

python - 确定网格(数组)位置的有效方法

git - 将 rebase merge 到开发分支后的重复提交