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