doucou19961205 2019-03-06 10:34
浏览 247
已采纳

Laravel与facebook登录

I am having troubles in logging in with Facebook.

I am using Laravel Socialite, I have followed all the instructions but I am having problems at method callback.

This is what i 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]: General error: 1364 Field 'password' doesn't have a default value

How to get the password of facebook?

  • 写回答

1条回答 默认 最新

  • doulvyi2172 2019-03-06 10:42
    关注

    When using Socialite you don't need the password of Facebook or any other service, because you will receive a token from the platform that you can use instead of a username / password.

    The problem here is that you are trying to create a user without supplying a password, while the password field is not nullable in the users table.

    You can solve this for example by creating a migration that changes the password column and makes it nullable, i.e.:

    Schema::table('users', function (Blueprint $table) {
        $table->string('password')->nullable()->change();
    });
    

    Still, you have to decide if this is the authorization setup you want and if you want users in your database without a password.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)
  • ¥20 怎么在stm32门禁成品上增加查询记录功能
  • ¥15 Source insight编写代码后使用CCS5.2版本import之后,代码跳到注释行里面