Github api возвращает неверные учетные данные даже с токеном oauth
Обновление : даже такой запрос получает неверные учетные данные ==>
curl -H "Authorization: token [token]" https://api.github.com
===============
Я сделал такой запрос на GitHub OAuth в своем приложении для iOS:
URL: https://github.com/login/oauth/authorize,
params: client_id: ****, redirect_uri: app_url, scope: "repo", state: "0"
После перенаправления из Safari я получаю код. Мне нужен доступ к двум вещам:
- Пользовательские данные, такие как электронная почта и т. Д. Также обновление пользовательских данных.
- Список репозиториев и коммитов в публичных и частных репозиториях.
Обращаюсь к следующим просьбам:
URL: https://api.github.com/user, получить и исправить Заголовок: Авторизация: токен [код]
URL: https://api.github.com/repos/:username/:repoName
Header: Authorization: token [code]
Но, к сожалению, я получаю следующую ошибку:
401, Unauthorized
{
"message": "Bad credentials",
"documentation_url": "https://developer.github.com/v3"
}
В чем проблема и как ее решить?
2 ответа
Решение
Как сказано в этом BLOB-объекте (НЕ в основной документации), вы должны обменять токен (который является временным) на токен-носитель через этот api:
А вот и документация для других: документация Github blob
Работает следующая команда curl: curl -u your_git_name: your_personal_access_token https://api.github.com/user