报错:401 参数错误,未获取用户信息

看到有人问了这个问题但是都没有答案啊

        if(!in_array($type, ['weixin'])){
            return $this->errorBadRequest();
        }
        $driver = \Socialite::driver($type); // SocialliteProviders/weixin/Provider 
        $code = $request->code;
        $response = $driver->getAccessTokenResponse($code);// 如果code过期会报错  {"message": "Undefined index: openid", "status_code": 500}
        $token = array_get($response, 'access_token');
        $oauthUser = $driver->userFromToken($token);
        // dd($token, $oauthUser); // 能成功共获取
  • 但是我用try{}catch(){}就直接catch了错误401
  • 代码是完全复制老师的
  • lara5.7,我为什么不能用try{}catch{} 如果能用,我该咋用呢??
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

@liyu001989
@Wi1dcard
这错误提醒把人往沟里带啊。。最后返回的时候写错个变量名导致的这个错误!!
疏忽大意了,非常感谢

5年前 评论
讨论数量: 5

建议先了解一下 PHP 的基本语言结构 try... catch... 以及错误与异常处理。

5年前 评论
liyu001989

一步一步来,你在 cli 下面调试成功了吗?成功了之后再往下做。

你得到的结果是 401 ,这个异常是我们自己抛出来的,你把 try catch 去掉就能看到原来的异常,code 只能使用一次

5年前 评论

@liyu001989 我去调try..catch 能正常获取用户信息。。。
cli 是啥? 额。。

5年前 评论
liyu001989

调试一次就重新创建一个 code,code 只能用一次

5年前 评论

@liyu001989
@Wi1dcard
这错误提醒把人往沟里带啊。。最后返回的时候写错个变量名导致的这个错误!!
疏忽大意了,非常感谢

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!