API-аутентификация с помощью Socialite - PullRequest
1 голос
/ 05 июля 2019

Я реализовал аутентификацию API с использованием Passport и пытаюсь сделать то же самое с помощью Socialite, но получаю ошибку исключения во время выполнения

Хранилище сеансов не настроено по запросу

Так выглядят конечные точки, следуя документации по laravel 5.8

Route::get('login/facebook', 'AuthController@facebookRedirect');

Route::get('login/facebook/callback', 'AuthController@facebookCallback');

В файл service.php я добавил ключ facebook, например,

'facebook' => [
    'client_id'     =>  env('FACEBOOK_CLIENT_ID'),
    'client_secret' => env('FACEBOOK_CLIENT_SECRET'),
    'redirect'      => env('FACEBOOK_CALLBACK_URL'),
],

И AuthController методы

public function facebookRedirect()
{
    return Socialite::driver('facebook')->redirect();
}

public function facebookCallback()
{
    return Socialite::driver('facebook')->stateless()->user();

    $user->token;
}

В Postman и моем браузере я назвал конечную точку API следующим образом http://localhost:8000/api/v1/login/facebook

Что я делаю не так? Это способ проверки подлинности API с использованием Socialite?

1 Ответ

0 голосов
/ 05 июля 2019

кажется, что вам нужно удалить stateless() из функции facebookCallback:

  public function facebookCallback()
  {
    return Socialite::driver('facebook')->user();

    $user->token;
   }
`

, если вы используете sessions, вы не должны использовать stateless()

...