问题是laravel社会名流停止工作,下面是解释:
我点击谷歌登录,选择电子邮件后,回调会发生这种情况:InvalidStateExc0019 on Abstract.php在第200行。
为了修复这个问题,我使用了有状态的()
,现在新的错误是:客户端错误:'POSThttps://www.googleapis.com/oauth2/v4/token'导致'400坏请求'响应:{"错误":"invalid_request","error_description":"缺少必需的参数:code"}
以下是我已经尝试过的事情列表:
1-在谷歌网站上,我更新了谷歌apiurl
和回调url
到新的实时域名地址:http://www.domain-name.com
和<--源代码
2-我修改了配置/会话。php文件如下:'domain'=
3-我的存储文件夹已具有如下权限:drwxrwxr-x 5 root www-data 4096 Jun 24 18:30 storage
4-我改变了供应商\laravel\社会名流\src\两个\GoogleProvider.php
文件,并删除了配置文件,现在它看起来像这样:
protected $scopes = [
'openid',
'email',
];
5-我用了php的工匠缓存:清除
,作曲家转储-自动加载
,并多次清除浏览器缓存数据。
6-我尝试了('google')的$userSocial=Socialite::方法-
我的config/services.php
文件是这样的:
'google' => [
'client_id' => 'my-correct-client-id-from-google',
'client_secret' => 'my-correct-client-secret-from-google',
'redirect' => 'http://www.domain-name.com/login/google/callback',
],
我已经尝试解决这个问题2天了。任何帮助都将不胜感激。
终于找到了答案:
是nginx:
所以我运行了sudo纳米 /etc/nginx/sites-available/default
并修正了这一行:
try_files $uri $uri/ /index.php?query_string; // wrong
到
try_files $uri $uri/ /index.php?$query_string; // fixed
谢谢@Pooria Honarmand花了几个小时后,我发现了你提到的同样的原因。因为我无法更改默认配置。
或者,您可以设置参数,如:
$urlArr=parse_url($_SERVER['REQUEST_URI']);
parse_str($urlArr['query'], $output);
$request->merge($output);
我有同样的问题,我今天花了两天多的时间更新了我的composer,删除了我的供应商文件夹,再次安装了composer,问题已经解决了