关于 Undefined index: openid 的疑问解答过程
缘由
可以确定一点,之所以出现这个错误,是因为 getAccessTokenResponse 获取 access_token 会同时设置 openid,所以一旦 code 是错误,或者当 appid 、secret是错误,就获取不到数据 access_token,这就出现这个错误。
错误重现
我先在登陆接口中,使用 code ,确定是首次使用 code,并且是最新获取的,这点无容置疑。
结果,发现这是报错的
然后,通过 tinker 调试,结果正常获取到 access_token
如果出现以上情况的,可以尝试下面的捕获方式,进一步确定错误源头,例如,捕获本次错误
进一步发现错误是缘由 appid ,无效的 appid:
既然错误由此产生的,那么可以确定两点:
- 在 config/service.php 配置是错误
- 配置没有生效,也就是数组的键名错误,所以 socilste 获取不到正确的配置
解决方法
我仔细的阅读了它获取配置的代码,正确的配置应该是这样的,同教程的一致,所以一定要保证配置是正确,否则就会出现 Undefined index:openid
答疑就到这里,发现错误可以看看源代码,可能会有意想不到的收获,有帮助到你的话,就点个赞吧。
推荐文章: