Я пытаюсь аутентифицировать пользователя, используя библиотеку php-github-api. Пока я отправил пользователя в Github, чтобы разрешить доступ к моему приложению, и я успешно получаю токен. Я не уверен, что делать сейчас. Вот мой код.Ошибка аутентификации PHP-GitHub-Api
URL-адрес, по которому я отправляю пользователя в Github.
https://github.com/login/oauth/authorize?scope=repo,user&client_id=<client_id>
Тогда с php-github-api я делаю это. Переменная $ token - это код, который отправляется в массиве $ _GET, когда пользователь перенаправляется на обратный вызов.
$client = new \Github\Client();
try {
$auth = $client->authenticate($token, Github\Client::AUTH_HTTP_TOKEN);
} catch (Exception $e) {
dp($e);
}
Кто-нибудь знает, является ли это правильным методом аутентификации пользователя? Когда я пытаюсь вызвать метод, для которого требуется аутентифицированный пользователь, я получаю код состояния 401 и ошибку в ответ.
Заранее благодарен!
[Второй аргумент] (https://github.com/KnpLabs/php-github-api/blob/master/doc/security.md) должен быть паролем. Документы говорят, что это должно быть «пропущено», но, возможно, они означают «' '' '' или 'null' для пароля. Если вы на самом деле опускаете это, вы фактически опускаете * метод * и устанавливаете пароль для 'Github \ Client :: AUTH_HTTP_TOKEN'. – GolezTrol
Это неверно. Я проверил сам метод аутентификации и проверяет, являются ли второй параметры одним из типов проверки подлинности. Таким образом, он знает, является ли второй параметр паролем или типом аутентификации. Спасибо за ответ! –
, и вы уверены, что $ client является экземпляром 'Github \ Client'? Если это экземпляр 'Github \ HttpClient \ HttpClient', ответ GolezTrol прав. –