@procode
Разработчик

Как организовать социальную аутентификацию через Socialite(Laravel)+JWTAuth+Vue.js без редиректа с API-сервера?

Делаю социальную аутентификацию на связке Vue+Laravel по образу и подобию вот этого: https://github.com/fritsvt/laravel-nuxt-authentication (это рабочий пример, по крайней мере для GitHub OAuth все запустилось). Но там есть вот какая закавыка:

- Он для аутентификации между Laravel и OAuth-провайдером (ну, например это GitHub) использует Socialite
- А для аутентификации между Laravel и фронтом на Nuxt.js(по сути это Vue.js) использует https://github.com/tymondesigns/jwt-auth

и когда на стороне Laravel он получает данные по юзеру от GitHub, то дальше, редиректом
return redirect(env('CLIENT_BASE_URL') . '/auth/social-callback?token=' . $this->auth->fromUser($user) . '&origin=' . ($newUser ? 'register' : 'login'));

передает уже JWT-токен на фронт - в Vue.

Но это решение, откровенно так себе решение, потому что приходится клиента жестко прописывать в конфиг сервера

CLIENT_BASE_URL

А если у меня не один клиент? А если у меня клиент вообще без урла и его IP мне заранее неизвестен?

Брать IP из запроса и подставлять динамически?

Но тут тоже такое... я вообще, хочу эту аутентификацию настроить для Android(Cordova)-клиента, и боюсь что там это просто не прокатит - все эти редиректы...

Что посоветуете коллеги? :) Как это можно сделать ловчее? Особенно в контексте WebView-клиента?

Заранее спасибо.
  • Вопрос задан
  • 90 просмотров
Решения вопроса 1
@grinat
В oauth в качестве redirect-url указываешь window.location, на который юзера перекинут, когда прекинули, парсишь данные из url и отправляешь на сервер.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
18 сент. 2019, в 06:11
5000 руб./за проект
17 сент. 2019, в 23:30
3000 руб./за проект