Как получить токен GitHub, используя имя пользователя и пароль - PullRequest
11 голосов
/ 16 июня 2011

Я занимаюсь разработкой мобильных приложений на Родосе.Я хочу получить доступ к частному репозиторию GitHub.У меня есть только имя пользователя и пароль.

Как получить токен с указанным именем пользователя и паролем.

Ответы [ 5 ]

6 голосов
/ 18 июня 2011

Если у вас есть только логин и пароль, вы можете использовать их, используя обычную аутентификацию. Прежде всего, проверьте, показывает ли этот код JSON данные желаемого репо. Имя пользователя и пароль должны быть разделены двоеточием.

curl -u "user:pwd" https://api.github.com/repos/user/repo

В случае успеха вам следует рассмотреть возможность выполнения этого запроса из кода.

import urllib2
import json
from StringIO import StringIO
import base64

username = "user@example.com"
password = "naked_password"

req = urllib2.Request("https://api.github.com/repos/user/repo")
req.add_header("Authorization", "Basic " + base64.urlsafe_b64encode("%s:%s" % (username, password)))
req.add_header("Content-Type", "application/json")
req.add_header("Accept", "application/json")
res = urllib2.urlopen(req)

data = res.read()
repository = json.load(StringIO(data))
4 голосов
/ 27 сентября 2016

Отправить запрос POST на /authorizations С заголовками

Content-Type: application/json Accept: application/json Authorization: Basic base64encode(<username>:<password>)

Но помните о двухфакторной аутентификации https://developer.github.com/v3/auth/#working-with-two-factor-authentication

Здесь Вы получитетокен, который можно использовать для дальнейшего запроса

4 голосов
/ 17 июня 2011

Вы должны использовать вместо oauth: http://developer.github.com/v3/oauth/

3 голосов
/ 29 января 2014

Пользователи Github могут создавать Личные токены доступа в своих настройках приложения .Вы можете использовать этот токен в качестве альтернативы имени пользователя / паролю в базовой аутентификации http для вызова API или для доступа к частным репозиториям на веб-сайте github.

Просто используйте клиент, который поддерживает базовую аутентификацию http.Установите имя пользователя равным токену, а пароль равным x-oauth-basic.Например, с curl:

curl -u <token>:x-oauth-basic https://api.github.com/user

См. Также https://developer.github.com/v3/auth/.

0 голосов
/ 16 июня 2011

Следуйте этому руководству на help.github.com.В нем описывается, как найти свой api-токен (он находится в разделе «Настройки учетной записи»> «Администратор учетной записи») и как настроить git для использования токена.

...