我将社交身份验证的用户详细信息存储到User
(可验证的)模型中,然后登录用户。这样我就可以使用Auth
.
回调函数:
public function callback()
{
$user = Socialite::driver('facebook')->user();
$newUser=new User();
$newUser->name=$user->name;
$newUser->email=$user->email;
$newUser->remember_token=$user->token;
$newUser->save();
Auth::login($newUser, true);
return redirect('/');
}
但是,我意识到任何人都可以使用内置登录的用户名登录,正常登录表单,如果不需要密码验证,因为我们没有将 Facebook 密码存储在我们的应用程序数据库中。在这种情况下,密码将为 NULL。
我想在用户注销后删除用户详细信息。
public function logout()
{
User::find(Auth::user()->id)->delete();
Auth::logout();
return redirect('/')->with('message','logged out!');
}
这看起来不太好。使经过社交验证的用户使用的正确或更好的方法是Auth
什么?