Я разрабатываю функцию «вход через LinkedIn» в Laravel 11 с помощью Socialite. Для этого требуются две конечные точки:
- Одна, которая перенаправляет пользователя на страницу входа в LinkedIn.
- Тот, на которую LinkedIn перенаправляет, если вход прошел успешно
- Ожидается: после входа в LinkedIn Меня следует перенаправить обратно на URL-адрес моего приложения.
- Реально: После успешного входа в LinkedIn я застреваю на пустом экране со следующим URL-адресом:https://www.linkedin.com/oauth/v2/autho ... %3A5173%2F linkedin%2Fcallback&scope=openid+profile+email&response_type=code&state=MVl80fRcB3IwHrXGWqiruDQxBwxTHu2yVNzHtret
Код: Выделить всё
'linkedin-openid' => [
'client_id' => env('LINKEDIN_CLIENT_ID'),
'client_secret' => env('LINKEDIN_CLIENT_SECRET'),
'redirect' => 'http://localhost:5173/linkedin/callback',
]

И, наконец, это мой сервис, который создает URL-адрес, который направляет пользователя на страницу входа в LinkedIn:
Код: Выделить всё
class LinkedInAuthLinkService
{
public function execute(): string
{
$state = Str::random(40);
Cache::put("linkedin_state_{$state}", auth()->id(), now()->addMinutes(60));
return Socialite::driver(SocialProviders::LINKEDIN)
->stateless()
->with(['state' => $state])
->redirect()
->getTargetUrl();
}
}
Подробнее здесь: https://stackoverflow.com/questions/792 ... -to-my-app
Мобильная версия