2

Recently i am working on laravel 5.1 framework and trying to make user login by Social Authentication like facebook login .. i followed this tutorial from youtube Laravel 5.1 Socialite Authentication

but get this Exception
InvalidStateException in AbstractProvider.php line 191:

in AbstractProvider.php line 191

at AbstractProvider->user() in SocialAuthController.php line 61 at SocialAuthController->github_Callback() at call_user_func_array(array(object(SocialAuthController), 'github_Callback'), array()) in Controller.php line 256 at Controller->callAction('github_Callback', array()) in ControllerDispatcher.php line 164

Here is my code

// facebook Sociolite for routing 
Route::get('/auth/facebook', 'Auth\SocialAuthController@redirectToProvider');
Route::get('callback_facebook', 'Auth\SocialAuthController@handleProviderCallback');

// AuthController

 <?php

 namespace App\Http\Controllers\Auth;

 use Illuminate\Http\Request;

 use App\Http\Requests;

 use App\User;
 use Validator;
 use App\Http\Controllers\Controller;
 use Illuminate\Foundation\Auth\ThrottlesLogins;
 use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers;

 use Socialite;
 use Auth;
 use redirect;


 class AuthController extends Controller
 {
     class SocialAuthController extends Controller{   
     // For Facebook
     public function redirectToProvider(){

        return Socialite::driver('facebook')->redirect();
     }
     public function handleProviderCallback(){
        $curl = curl_init();
        curl_setopt($curl , CURLOPT_SSL_VERIFYPEER, false);

        $user = Socialite::driver('facebook')->user();
        $data = ['name'=>$user->name, 'email'=>$user->email,    'password'=>$user->token];
        $userDB = User::where('email',$user->email)->first();

        if (!is_null($userDB)){
            Auth::login($userDB);
        }
        else{
            Auth::login($this->create($data));
        }
        return redirect('/pages/profile');
    }
  }
}

    config\service.php
    'facebook' => [
        'client_id' => '513845902100524',
        'client_secret' => '135699237e16cd3a50d2cbfec3a5e58c',
        'redirect' => 'http://localhost:8000/callback_facebook',
    ],
Abdur Razzak
  • 101
  • 2
  • 4
  • 11

1 Answers1

0

You can get detail documentation from laravel official site. Socialite tutorial here.

Ishahriyar
  • 19
  • 4
  • 1
    thnx Ishahriyar for u'r reply after followed this tutorial http://www.codeanchor.net/blog/complete-laravel-socialite-tutorial/ i got another Exception – Abdur Razzak Sep 09 '15 at 19:44