Laravel 5在AbstractProvider.php中创建InvalidStateException

Laravel 5在AbstractProvider.php中创建InvalidStateException,第1张

概述我正在尝试使用Socialize在laravel 5中使用facebook登录. 这是我的路线文件代码. Route::get('fb', function ($facebook = "facebook"){ $provider = \Socialize::with($facebook); if (Input::has('code')) { $ 我正在尝试使用Socialize在laravel 5中使用facebook登录.

这是我的路线文件代码.

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();    }});

登录成功,我得到代码,但得到$provIDer-> user()的时间我得到错误.

InvalIDStateException in AbstractProvIDer.PHP line 161

我只是评论出发出错误的代码(如在@Dipesh Shihora的回答中),我感到很不舒服,所以我进一步挖了一下.我发现错误是由于会话问题引起的(至少在我的情况下).

我的开发服务器是根据this answer中给出的说明设置的.基本上,我通过使用看似公共可访问地址的回调URL“欺骗”Google.

InvalIDStateException问题出现在我面前,因为我正在http:// localhost / login访问我的登录页面并重定向到Google的登录页面,然后返回http://myapp.example.com/callback.问题是会话密钥存储在cookie中 – 它最初是http:// localhost的cookie,但是当我重定向到不同的URL时,cookie(以及会话密钥)无法访问.因此,更新后会话状态值不存在并抛出异常.

解决方案?确保我在开发计算机上的所有浏览都是在http://myapp.example.com上完成的,而不是在http:// localhost上完成的.

总结

以上是内存溢出为你收集整理的Laravel 5在AbstractProvider.php中创建InvalidStateException全部内容,希望文章能够帮你解决Laravel 5在AbstractProvider.php中创建InvalidStateException所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1265943.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存