@E6APB

Laravel Socialite: почему ВК говорит, что redirect_url не одинаковый?

Использую Laravel Socialite и провайдер для ВК к нему. Мой код:

Роутинг:

Route::get('vk', 'LoginController@vk');

Route::get('vk/callback', 'LoginController@vkCallback');


Контроллер:

use SocialiteProviders\Manager\Config;

public function vk()
{
    $clientId = env('VKONTAKTE_KEY');
    $clientSecret = env('VKONTAKTE_SECRET');
    $redirectUrl = url('drivers/login/vk/callback');

    $config = new Config($clientId, $clientSecret, $redirectUrl);

    return \Socialite::with('vkontakte')
                                    ->setConfig($config)
                                    ->setScopes([])
                                    ->redirect();
}

public function vkCallback()
{
    $user = \Socialite::driver('vkontakte')->user();

    dd($user);
}


метод vk() работает отлично, а вот после редиректа на vkCallback, выходит ошибка, мол URLы не совпадают.


Client error: `POST https://oauth.vk.com/access_token` resulted in a `401 Unauthorized` response:
{"error":"invalid_grant","error_description":"redirect_uri is invalid, please pass same redirect_uri, you used in author (truncated...)


Почему так?
  • Вопрос задан
  • 1424 просмотра
Пригласить эксперта
Ответы на вопрос 2
teknik2008
@teknik2008
Расскажите про GOLANG. Мне интересно
А прологировать, не пробовали?
Возможно разный.
Ответ написан
@dustdevil
->setConfig($config) - ответ кроется тут. Почему-то конфиг не подтягивается динамически, а по прежнему берется из установленного в config/services.php
Единственный вариант что я придумал - менять сам конфиг:
Config::set([$this->service_key => ['client_id' => $this->app_id, 'client_secret' => $this->app_key, 'redirect' => $this->redirect]]);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы