API GitHub: использование области "repo", но по-прежнему не может видеть частные репозитории
В документах API GitHub, Я запрашиваю область repo, которая предоставляет доступ к частным репозиториям.
Пользователю предлагается следующий диалог, в котором также упоминаются частные репозитории. Они принимают приложение.
![enter image description here]()
Несмотря на это, при использовании маркера доступа oauth, полученного при запросе доступа "repo", я могу видеть только публичные репозиции, когда я GET https://api.github.com/users/someusername/repos. Не отображаются частные репозитории.
Учетная запись пользователя является моей, и я не отменял доступ.
Как я могу увидеть частные репозитории с помощью GitHub API V3?
Ответы
Ответ 1
От тестирования:
-
GETing /users/someusername/repos не показывает частные репозитории (даже если это пользователь, чей маркер доступа oauth используется).
-
GETing /user/repos показать частные репозитории.
В настоящее время это не описано в документах GitHub API, я только что узнал через тестирование.
Спасибо @ivanzuzak за то, что предложили посмотреть на конечную точку.
Ответ 2
Чтобы получить доступ к личной информации, вам необходимо включить параметр access_token в URL. Пример:
/пользователей/someusername/хранилищу? access_token = 512295a0afb73bdd1c076a00c69f8abcd12345
Точки доступа генерируются для каждого пользователя. Здесь вы можете создать свой токен доступа:
https://github.com/settings/applications
Вам также необходимо иметь разрешение на доступ к частному репозиторию для получения информации об этом.
Вы также можете увидеть информацию о вилках частного репозитория, к которому у вас есть доступ.
Ответ 3
Для любых пользователей Octokit, имеющих эту проблему: client.list_repos(nil)
found здесь будет использовать GET /user/repos
, который также возвращает частные репозитории.
Ответ 4
(Я новичок с Git и использовал командную строку, следующую за https://developer.github.com/guides/getting-started/, но у меня были проблемы с цитированием и т.д. Поэтому я переключился на браузер и сделал некоторый прогресс)
В браузере мой URL-адрес
https://api.github.com/user/repos?access_token=deadbeefdeadbeefdeadbeefdeadbeefdeadbeef
где я поменялся на фальшивый токен для моего реального (маркеры должны рассматриваться как пароли, не разделяемые).
Это дало мне полный список моих личных репозиториев в JSON.