如何解决Laravel 7中登录社交名Google的问题
我通过Google进行的身份验证工作正常,并且突然开始在生产中出现以下错误(在localhost中,一切继续正常工作)。在进行此查询之前,我看了很多东西,尝试了网络上的所有选项,但找不到解决方案。
错误:调试
Laravel \ Socialite \ Two \ InvalidStateException
在LoginController中,我在以下行中收到错误:
$userSocialite = Socialite::driver($driver)->user();
在服务器日志中:
local.ERROR:{“ exception”:“ [对象](Laravel \ Socialite \ Two \ InvalidStateException(代码:0):位于/ home / brooklyn / Sistema / vendor / laravel / socialite / src / Two / AbstractProvider。 PHP:209)[stacktrace]
LoginController:
//Socialite
公共函数redirectToProvider($ driver) { $ drivers = ['google'];
if(in_array($driver,$drivers)){
return Socialite::driver($driver)->redirect();
}else{
return redirect()->route('login')->with('info',$driver . ' no es una aplicación valida para poder loguearse');
}
}
公共函数handleProviderCallback(请求$ request,$ driver) { if($ request-> get('error')){ 返回redirect()-> route('login')-> with('info','Ocurrióun error,vuelva a intentarlomástarde。'); }
$userSocialite = Socialite::driver($driver)->user();
$social_profile = SocialProfile::where('social_id',$userSocialite->getId())
->where('social_name',$driver)->first();
if(!$social_profile){
$user = User::where('email',$userSocialite->getEmail())->first();
if(!$user){
$user = User::create([
'name' => $userSocialite->user['given_name'],'apellido' => $userSocialite->user['family_name'],'email' => $userSocialite->getEmail(),'permiso' => 'USUARIO','tipo_usuario' => 'PARTIculaR'
]);
}
SocialProfile::create([
'user_id' => $user->id,'social_id' => $userSocialite->getId(),'social_name' => $driver,'social_avatar' => $userSocialite->getAvatar()
]);
}
auth()->login($social_profile->user);
return redirect()->route('panel');
/* dd($user->user['given_name']); */
// $user->token;
}
执行的测试没有效果
1次测试
在Localhost中,如果我进行以下修改:
在session.PHP
我对此进行了更改:
'domain' => env('SESSION_DOMAIN',null),
收件人
'domain' => env('SESSION_DOMAIN','midominio.com'),
2个测试
添加到LoginController
Socialite::driver('google')->stateless()->user();
我收到以下错误:
GuzzleHttp \ Exception \ ClientException客户端错误:POST https://www.googleapis.com/oauth2/v4/token导致400错误的请求响应:{“ error”:“ invalid_request”,“ error_description”:“缺少必需的参数:code”}
我需要有人启发我,我还能做些什么。请任何想法将受到欢迎! 谢谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。