mercredi 5 octobre 2016

Laravel Socialite Client error response Guzzle: handle [status code] 400 [reason phrase] Bad Request

I'm use laravel 5.1 and socialite 2.0.18

http://ift.tt/1OyvBzX

I laravel this works only when running local example:

http:// localhost:8000/login

but here it does not work

http:// http://ift.tt/2dLdKe9

and I included the url in the application settings facebook

help me please

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "type": "project",
    "require": {
        "php": ">=5.5.9",
        "laravel/framework": "5.1.*",
        "laravel/socialite": "^2.0"
    },
    "require-dev": {
        "fzaninotto/faker": "~1.4",
        "mockery/mockery": "0.9.*",
        "phpunit/phpunit": "~4.0",
        "phpspec/phpspec": "~2.1",
        "adamwathan/eloquent-oauth-l5": "0.1.*"
    },
    "autoload": {
        "classmap": [
            "database"
        ],
        "psr-4": {
            "App\\": "app/"
        }
    },
    "autoload-dev": {
        "classmap": [
            "tests/TestCase.php"
        ]
    },
    "scripts": {
        "post-root-package-install": [
            "php -r \"copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "php artisan key:generate"
        ],
        "post-install-cmd": [
            "Illuminate\\Foundation\\ComposerScripts::postInstall",
            "php artisan optimize"
        ],
        "post-update-cmd": [
            "Illuminate\\Foundation\\ComposerScripts::postUpdate",
            "php artisan optimize"
        ]
    },
    "config": {
        "preferred-install": "dist"
    }
}

=================================================================

controller auth

<?php

namespace App\Http\Controllers\Auth;

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

class AuthController extends Controller
{
    protected $redirectTo = '/home';
    protected $redirectPath = '/greeting';
    /*
    |--------------------------------------------------------------------------
    | Registration & Login Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles the registration of new users, as well as the
    | authentication of existing users. By default, this controller uses
    | a simple trait to add these behaviors. Why don't you explore it?
    |
    */

    use AuthenticatesAndRegistersUsers, ThrottlesLogins;

    /**
     * Create a new authentication controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest', ['except' => 'getLogout']);
    }

    /**
     * Get a validator for an incoming registration request.
     *
     * @param  array  $data
     * @return \Illuminate\Contracts\Validation\Validator
     */
    protected function validator(array $data)
    {
        return Validator::make($data, [
            'name' => 'required|max:255',
            'email' => 'required|email|max:255|unique:users',
            'password' => 'required|confirmed|min:6',
        ]);
    }

    /**
     * Create a new user instance after a valid registration.
     *
     * @param  array  $data
     * @return User
     */
    protected function create(array $data)
    {
        /*return User::create([
            'name' => $data['name'],
            'email' => $data['email'],
            'password' => bcrypt($data['password']),
        ]);*/
        $user = new User([
            'name' => $data['name'],
            'email' => $data['email'],
            'password' => bcrypt($data['password']),
        ]);
        $user->role = 'user';
        $user->save();


        return $user;
    }


    /**
     * Get the path to the login route.
     *
     * @return string
     */
    public function loginPath()
    {
        return route('login');
    }

    /**
     * Get the post register / login redirect path.
     *
     * @return string
     */
    public function redirectPath()
    {
        return route('home');
    }
 /**
     * Redirect the user to the Facebook authentication page.
     *
     * @return Response
     */
    public function redirectToProvider()
    {
        return Socialite::driver('facebook')->redirect();
    }

    /**
     * Obtain the user information from Facebook.
     *
     * @return Response
     */
    public function handleProviderCallback()
    {
        try {
            $user = Socialite::driver('facebook')->user();
        } catch (Exception $e) {
            return redirect('auth/facebook');
        }

        $authUser = $this->findOrCreateUser($user);

        Auth::login($authUser, true);

        return redirect()->route('home');
    }

    /**
     * Return user if exists; create and return if doesn't
     *
     * @param $facebookUser
     * @return User
     */
    private function findOrCreateUser($facebookUser)
    {
        $authUser = User::where('facebook_id', $facebookUser->id)->first();

        if ($authUser){
            return $authUser;
        }

        return User::create([
            'name' => $facebookUser->name,
            'email' => $facebookUser->email,
            'facebook_id' => $facebookUser->id,
            'avatar' => $facebookUser->avatar
        ]);
    }
}

ERROR HANDLE

Whoops, looks like something went wrong. 1/1 ClientException in RequestException.php line 89: Client error response [url] http://ift.tt/JH6Whd [status code] 400 [reason phrase] Bad Request

in RequestException.php line 89
at RequestException::create(object(Request), object(Response)) in HttpError.php line 33
at HttpError->onComplete(object(CompleteEvent), 'complete') in Emitter.php line 108
at Emitter->emit('complete', object(CompleteEvent)) in RequestFsm.php line 91
at RequestFsm->__invoke(object(Transaction)) in RequestFsm.php line 132
at RequestFsm->GuzzleHttp\{closure}(array('transfer_stats' => array('url' => 'http://ift.tt/JH6Whd', 'content_type' => 'text/javascript; charset=UTF-8', 'http_code' => '400', 'header_size' => '540', 'request_size' => '344', 'filetime' => '-1', 'ssl_verify_result' => '0', 'redirect_count' => '0', 'total_time' => '0.06829', 'namelookup_time' => '0.004444', 'connect_time' => '0.010676', 'pretransfer_time' => '0.028996', 'size_upload' => '153', 'size_download' => '111', 'speed_download' => '1625', 'speed_upload' => '2240', 'download_content_length' => '111', 'upload_content_length' => '153', 'starttransfer_time' => '0.068124', 'redirect_time' => '0', 'redirect_url' => '', 'primary_ip' => '31.13.69.197', 'certinfo' => array(), 'primary_port' => '443', 'local_ip' => '162.243.26.26', 'local_port' => '57664', 'error' => '', 'errno' => '0'), 'curl' => array('error' => '', 'errno' => '0'), 'effective_url' => 'http://ift.tt/JH6Whd', 'headers' => array('WWW-Authenticate' => array('OAuth "Facebook Platform" "invalid_request" "Missing authorization code"'), 'Access-Control-Allow-Origin' => array('*'), 'Pragma' => array('no-cache'), 'Cache-Control' => array('no-store'), 'facebook-api-version' => array('v2.1'), 'Expires' => array('Sat, 01 Jan 2000 00:00:00 GMT'), 'Content-Type' => array('text/javascript; charset=UTF-8'), 'x-fb-trace-id' => array('GEtG2aoG/Y8'), 'x-fb-rev' => array('2604134'), 'X-FB-Debug' => array('BdAl0CmgdjYlcXaO8ybXiHxI9Xqj5PpELUigwQpzNAQgIlUb0rM/a02EBXEINcuf+MVVtTYk0tRJFh3QKrknWQ=='), 'Date' => array('Wed, 05 Oct 2016 20:51:18 GMT'), 'Connection' => array('keep-alive'), 'Content-Length' => array('111')), 'version' => '1.1', 'status' => '400', 'reason' => 'Bad Request', 'body' => resource)) in FulfilledPromise.php line 25
at FulfilledPromise->then(object(Closure), null, null) in CompletedFutureValue.php line 55
at CompletedFutureValue->then(object(Closure), null, null) in FutureResponse.php line 43
at FutureResponse::proxy(object(CompletedFutureArray), object(Closure)) in RequestFsm.php line 135
at RequestFsm->__invoke(object(Transaction)) in Client.php line 165
at Client->send(object(Request)) in Client.php line 150
at Client->post('http://ift.tt/JH6Whd', array('body' => array('client_id' => '1793307404245323', 'client_secret' => 'e4dc7cfe31ad11dd3a94da9c59101206', 'code' => null, 'redirect_uri' => 'http:// http://ift.tt/2dLecZG'))) in FacebookProvider.php line 77
at FacebookProvider->getAccessTokenResponse(null) in AbstractProvider.php line 203
at AbstractProvider->user() in AuthController.php line 118
at AuthController->handleProviderCallback()
at call_user_func_array(array(object(AuthController), 'handleProviderCallback'), array()) in Controller.php line 256
at Controller->callAction('handleProviderCallback', array()) in ControllerDispatcher.php line 164
at ControllerDispatcher->call(object(AuthController), object(Route), 'handleProviderCallback') in ControllerDispatcher.php line 112
at ControllerDispatcher->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in RedirectIfAuthenticated.php line 41
at RedirectIfAuthenticated->handle(object(Request), object(Closure))
at call_user_func_array(array(object(RedirectIfAuthenticated), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in ControllerDispatcher.php line 114
at ControllerDispatcher->callWithinStack(object(AuthController), object(Route), object(Request), 'handleProviderCallback') in ControllerDispatcher.php line 69
at ControllerDispatcher->dispatch(object(Route), object(Request), 'App\Http\Controllers\Auth\AuthController', 'handleProviderCallback') in Route.php line 203
at Route->runWithCustomDispatcher(object(Request)) in Route.php line 134
at Route->run(object(Request)) in Router.php line 708
at Router->Illuminate\Routing\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in Router.php line 710
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 675
at Router->dispatchToRoute(object(Request)) in Router.php line 635
at Router->dispatch(object(Request)) in Kernel.php line 236
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 139
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in VerifyCsrfToken.php line 50
at VerifyCsrfToken->handle(object(Request), object(Closure))
at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in ShareErrorsFromSession.php line 49
at ShareErrorsFromSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(ShareErrorsFromSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 62
at StartSession->handle(object(Request), object(Closure))
at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure))
at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 59
at EncryptCookies->handle(object(Request), object(Closure))
at call_user_func_array(array(object(EncryptCookies), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44
at CheckForMaintenanceMode->handle(object(Request), object(Closure))
at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
at Pipeline->then(object(Closure)) in Kernel.php line 122
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 87
at Kernel->handle(object(Request)) in index.php line 54



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire