Laravel 5 在 AbstractProvider.php 中获取 InvalidStateException [英] Laravel 5 geting InvalidStateException in AbstractProvider.php

查看:21
本文介绍了Laravel 5 在 AbstractProvider.php 中获取 InvalidStateException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用 Socializelaravel 5 中使用 Facebook 登录.

I am trying to use login with facebook in laravel 5 using Socialize.

这是我的路由文件代码.

Here is my route file code.

Route::get('fb', function ($facebook = "facebook")
{
    $provider = Socialize::with($facebook);      
    if (Input::has('code'))
    {
        $user = $provider->user();
        return var_dump($user);
    } else {
        return $provider->scopes(['public_profile','user_friends'])->redirect();
    }
});

登录成功,我得到了代码,但是在 get $provider->user() 的时候我得到了错误.

login is success and I get the code but time of get $provider->user() I get the error.

AbstractProvider.php 第 161 行中的 InvalidStateException

InvalidStateException in AbstractProvider.php line 161

推荐答案

我得到了临时解决方案.

I got temporary solution for that.

public function user()
{
    //if ($this->hasInvalidState()) {
    //    throw new InvalidStateException;
    //}

    $user = $this->mapUserToObject($this->getUserByToken(
        $token = $this->getAccessToken($this->getCode())
    ));
    return $user->setToken($token);
}

评论 $this->hasInvalidState() 如果 AbstractProvider.php 文件中的条件,它工作正常.

comment the $this->hasInvalidState() if condition in AbstractProvider.php file and it's work fine.

这篇关于Laravel 5 在 AbstractProvider.php 中获取 InvalidStateException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆