Использование аутентификации GitHub для просмотра приватных репозиториев без использования GitHub API
Я использовал GitHub API для доступа к частным репозиториям, используя Authorization
заголовок. Это работает очень хорошо. Но я не могу увидеть репозиторий, то есть отправить запрос GET для веб-страницы репозитория.
Предположим, что URL, к которому я хочу получить доступ,
url = 'https://github.com/username/repo'
это ссылка на мой личный репозиторий. И я имею
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
1 ответ
Я связался с поддержкой GitHub, и они ответили. Мы не можем использовать токены OAuth для доступа к сайту. Тем не менее, различия доступны через API:
https://developer.github.com/v3/pulls/
Вы можете пройти в 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 за поддержку!