Laravel с фейсбуком - PullRequest
       23

Laravel с фейсбуком

0 голосов
/ 06 марта 2019

У меня проблемы со входом в Facebook.

Я использую Laravel Socialite, я выполнил все инструкции, но у меня проблемы с обратным вызовом метода.

Это то, что яdo:

public function redirectToFacebook()
{
    return Socialite::driver('facebook')->redirect();
}
public function handleFacebookCallback()
{
    $userSocial = Socialite::driver('facebook')->user();
    //return $userSocial;
    $finduser = User::where('facebook_id', $userSocial->id)->first();
    if($finduser){
        Auth::login($finduser);
        return Redirect::to('/');
    }else{
        $new_user = User::create([
           'name'        => $userSocial->name,
           'email'       => $userSocial->email,
           'image'       => $userSocial->avatar_original,
           'facebook_id' => $userSocial->id
        ]);
        Auth::login($new_user);
        return redirect()->back();
    }
}

SQLSTATE [HY000]: общая ошибка: 1364 Поле 'пароль' не имеет значения по умолчанию

Как получить пароль от facebook?

1 Ответ

0 голосов
/ 06 марта 2019

При использовании Socialite вам не нужен пароль Facebook или какой-либо другой службы, потому что вы получите токен от платформы, который вы можете использовать вместо имени пользователя / пароля.

Проблема здесь в том, что вы пытаетесь создать пользователя без ввода пароля, в то время как поле пароля в таблице пользователей не обнуляется.

Вы можете решить эту проблему, например, создав миграцию, которая изменяет столбец пароля и делает его обнуляемым, т.е.хотите, и если вы хотите, чтобы пользователи в вашей базе данных без пароля.

...