[extension] dicr/yii2-yandex-oauth


Яндекс.OAuth клиент для Yii2

  1. Настройка
  2. Использование

API: https://yandex.ru/dev/oauth/doc/dg/concepts/about.html
Способ получить отладочный токен вручную, без обработки callback:
https://yandex.ru/dev/oauth/doc/dg/tasks/get-oauth-token.html
Дополнительно реализован метод получения информации о пользователе UserInfoRequest из API Яндекс.ID (Passport).
Настройка $config = [
'components' => [
'yandex-oauth' => [
'class' => dicr\yandex\oauth\OAuthClient::class,
'clientId' => 'ИД приложения',
]
]
];

Использование /** @var dicr\yandex\oauth\OAuthClient $oauth */
$oauth = Yii::$app->get('yandex-oauth');

/** @var dicr\yandex\oauth\AuthRequest $req запрос кода авторизации */
$req = $oauth->authRequest();

/** @var string $oauthUrl адрес для переадресации клиента */
$oauthUrl = $req->url();

// переадресация клиента на Яндекс.OAuth
Yii::$app->end(0, Yii::$app->response->redirect($oauthUrl));