Светская без гражданства

У меня есть внешний SPA, построенный на Angular 6, и внутренний на Laravel 5.6. Я пытаюсь сделать авторизацию с помощью Facebook ngx-social-login на переднем конце и Socialite на заднем плане.

Это код в моем компоненте

signInWithFacebook(): void {
this.sas.signIn(FacebookLoginProvider.PROVIDER_ID).then(
userData => this.as.fb(userData.authToken).subscribe(x => {
console.log(x);
})
);
}

И это услуга

fb(data): Observable<any> {
return this.http.get(this.API_URL, data);
}

А вот и мои маршруты Laravel

$api->version('v1', function ($api) {
$api->get('auth/facebook', 'SocialAuthFacebookController@redirectToProvider');
$api->get('auth/facebook/callback', 'SocialAuthFacebookController@callback');
});

Это контроллер

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

public function callback()
{
$user = Socialite::driver('facebook')->stateless()->user();

$authUser = $this->findOrCreateUser($user, 'facebook');

$token = JWTAuth::fromUser($authUser);

return Response::json(compact('token'));
}

public function findOrCreateUser($user, $provider)
{
$authUser = User::where('provider_id', $user->id)->first();

if ($authUser) {
return $authUser;
}

return User::create([
'name' => $user->name,
'email' => $user->email,
'provider' => $provider,
'provider_id' => $user->id
]);
}

Поскольку я использую Laravel только для API, я полагаю, что не могу получить доступ redirectToProvider так что я пытался позвонить auth/facebook/callback и передать его authToken что я получаю после входа в мой SPA. Тем не менее, это не похоже на работу.

Я испытываю следующую ошибку
введите описание изображения здесь

Благодаря Facebook есть так много информации, что я не знаю, что не так и что с этим делать.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]