Login con el SDK de Facebook

Autor: J. Luis, 24 octubre, 2018

Programaremos un Login con el SDK de Facebook, para que los usuarios puedan iniciar sesión con su cuenta de Facebook en una aplicación web hecha en Laravel

Login con el SDK de Facebook

En esta ocación implementaremos un Login con el SDK de facebook en PHP  adecuandonos al anterior Post, la forma de acceder a la ruta del login es http://dominio.com/facebook/login. para ello abrimos el archivo routes/web.php y creamos la siguiente ruta para el login

Route::get('/facebook/login', function(SammyK\LaravelFacebookSdk\LaravelFacebookSdk $fb)
{    
    $login_url = $fb->getLoginUrl(['email']);    
    echo 'LOGIN   ';
});
Route::get('/facebook/callback', function(SammyK\LaravelFacebookSdk\LaravelFacebookSdk $fb)
{
    try {
        $token = $fb->getAccessTokenFromRedirect();

    } catch (Facebook\Exceptions\FacebookSDKException $e) {
        dd($e->getMessage());
    }   
    if (! $token) {       
        $helper = $fb->getRedirectLoginHelper();
        if (! $helper->getError()) {
            abort(403, 'Unauthorized action.');
        }     
        dd(
            $helper->getError(),
            $helper->getErrorCode(),
            $helper->getErrorReason(),
            $helper->getErrorDescription()
        );
    }

    if (! $token->isLongLived()) {        
        $oauth_client = $fb->getOAuth2Client();        
        try {
            $token = $oauth_client->getLongLivedAccessToken($token);
        } catch (Facebook\Exceptions\FacebookSDKException $e) {
            dd($e->getMessage());
        }
    }
    $fb->setDefaultAccessToken($token);
    Session::put('fb_user_access_token', (string) $token);
    try {        
        $response = $fb->get('/me?fields=id,name,email');     
    } catch (Facebook\Exceptions\FacebookSDKException $e) {
        dd($e->getMessage());
    }   
    $facebook_user = $response->getGraphUser();   
    return redirect('/')->with('message', 'Bienvenido');
});

 


Leido 3907 veces | 0 usuarios

Código fuente no disponible.

Compartir link del tutorial con tus amigos

Codea Applications

México, Colombia, España, Venezuela, Argentina, Bolivia, Perú