facebook socalite
Thu Jan 25 2024 20:52:19 GMT+0000 (Coordinated Universal Time)
Saved by
@hamzaliaqat
//redirect
public function socialLogin()
{
return Socialite::driver('facebook')->redirect();
}
//callback
public function handleProviderCallback()
{
try {
$user = Socialite::driver('facebook')->user();
$finduser = User::where('facebook_id', $user->id)->first();
if($finduser){
Auth::login($finduser);
return redirect()->intended('/');
}else{
$newUser = User::create([
'name' => $user->name,
'email' => $user->email,
'facebook_id'=> $user->id,
'password' => encrypt('Test123456')
]);
Auth::login($newUser);
return redirect()->intended('/');
}
} catch (Exception $e) {
dd($e->getMessage());
}
}
//routes
Route::get('/login/facebook',[login::class,'socialLogin'])->name('redirectToFacebook');
Route::get('/login/facebook/callback',[login::class,'handleProviderCallback'])->name('callbackFacebook');
// config/services.php
'facebook' => [
'client_id' => '', //Facebook API
'client_secret' => '', //Facebook Secret
'redirect' => '',//callback url
],
//config/app.php
'Socialite' => Laravel\Socialite\Facades\Socialite::class, //aliases
Laravel\Socialite\SocialiteServiceProvider::class, //providers
content_copyCOPY
Comments