Laravel Socialite:AbstractProvider.php中的InvalidStateException行199:

出于某种原因,当我尝试使用Facebook或Google与Laravel Socialite进行登录时,我会遇到此异常情况:

AbstractProvider.php第199行中的InvalidStateException:

当我试图从Facebook的驱动程序获取用户时,从我的SocialiteController中抛出异常。

public function callback(SocialAccountService $service, $provider)
    {
        try {
            var_dump(Socialite::driver('facebook')->user());

这里是AbstractProvider.php的一部分,它似乎抛出了实际的异常:

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

我一直在关注这个教程https://blog.damirmiladinov.com/laravel/laravel-5.2-socialite-twitter-login.html#.WFK0BfnhCUk。 由于某种原因,登录工作正常,直到上周。

我阅读其他文章说我应该改变config / session.php,所以域不是空的,但我目前的域名(在我的情况下localhost:8000,因为我用XAMPP本地运行),并刷新Laravel缓存等,但它没有奏效。


我发现我的Laravel应用程序cookie丢失,导致InvalidStateException异常。

我也注意到,在每个HTTP请求之后cookie都没有被重新创建。 当我将Config / Session.php中的域值从当前的域(“本地主机”)更改为空(默认值)时,再次重新创建了cookie。


尝试

session()->put('state', $request->input('state'));
$user = Socialite::driver('facebook')->user();
链接地址: http://www.djcxy.com/p/33119.html

上一篇: Laravel Socialite: InvalidStateException in AbstractProvider.php line 199:

下一篇: Laravel Socialite with Google saves different ID number, causes duplicate error