Я пытаюсь пройти аутентификацию, используя социальную аутентификацию в laravel. У меня есть этот код в services.php
'facebook' => [
'client_id' => 'your-facebook-id',
'client_secret' => 'your-facebook-app-secret',
'redirect' => 'http://your-callback-url',
],
И всякий раз, когда я пытаюсь войти, Facebook показывает:
Неверный идентификатор приложения: your-facebook-id
Что на самом деле client_id
, client_secret
, а также redirect
Вот?
У меня есть эти методы для перенаправления пользователя к провайдеру OAuth, а другой — для получения обратного вызова от провайдера после аутентификации.
public function redirectToProvider()
{
return Socialite::driver('facebook')->redirect();
}
public function handleProviderCallback()
{
$user = Socialite::driver('facebook')->user();
dd($user->getEmail);
}
Вы получаете client_id
и client_secret
из Facebook, когда вы создаете «приложение» в своей системе (в этом контексте приложение не то, что вы могли бы подумать изначально).
https://developers.facebook.com/
После создания ваш client_id
будет то, что они называют «идентификатор приложения» и ваш client_secret
будет то, что они называют «Секрет приложения». Вам нужно нажать кнопку «Показать» и пройти повторную аутентификацию, чтобы получить ваш секрет.
Ваш redirect
где вы хотите, чтобы Facebook перенаправлял вас после того, как пользователь авторизовал ваше приложение. Обычно это перенаправление должно быть там, где вы на самом деле обрабатываете процесс входа в систему, который в вашем случае является URL / маршрутом, который передает управление вашему handleProviderCallback()
метод.
Других решений пока нет …