Ошибка OpenId Connect Yii2 - yii2-authclient возвращает ошибку 400 «Токен не предоставлен» при попытке getUserAttributes () - PullRequest
0 голосов
/ 06 июня 2018

Я внедряю OpenId Connect в свое приложение Yii2 с помощью библиотеки yii2-authclient.Я могу войти и обменять код на токен без проблем.Я следовал большинству примеров кода в Интернете и установил функцию successCallback, которая вызывается при успешном входе пользователя в систему. Это выглядит так:

public function successCallback(ClientInterface $client) 
{
    $attributes = $client->getUserAttributes();
}

Этот код вызывается, но вызывается getUserAttributes() приводит к следующей ошибке:

Исключение - yii \ authclient \ InvalidResponseException
Запрос не выполнен с кодом: 400, сообщение:
{"error": "invalid_request", "error_description": «Токен не предоставлен»}

В журналах на сервере идентификаторов указаны пустые клиент и пользователь с ошибкой invalid_token.

Я внимательно посмотрел наЯ делаю запрос и вижу элемент access_token.Есть идеи, в чем может быть проблема?При необходимости могу предоставить больше информации.

1 Ответ

0 голосов
/ 07 июня 2018

Я понял это.Проблема заключалась в том, что библиотека yii2-authclient отправляла токен в качестве параметра GET, а сервер ID ожидал его в качестве параметра POST.Я обновил библиотеку yii2-authclient, и это решило проблему, поскольку недавнее изменение отправляет параметр как POST вместо GET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...