Add a new column to facebook’s user column: facebook_user_id . Each time a user tries to log in via Facebook, Facebook will return the same user ID.
public function handleProviderCallback($provider) { $socialize_user = Socialize::with($provider)->user(); $facebook_user_id = $socialize_user->getId(); // unique facebook user id $user = User::where('facebook_user_id', $facebook_user_id)->first(); // register (if no user) if (!$user) { $user = new User; $user->facebook_id = $facebook_user_id; $user->save(); } // login Auth::loginUsingId($user->id); return redirect('/'); }
How does Laravel Socialite work?
public function redirectToProvider() { // 1. with this method you redirect user to facebook, twitter... to get permission to use user data return Socialize::with('github')->redirect(); } public function handleProviderCallback() { // 2. facebook, twitter... redirects user here, where you write code to log in user $user = Socialize::with('github')->user(); }
source share