避坑:微信公众号获取不到用户信息

如题所述

第1个回答  2022-08-08
微信公众号获取用户信息有两种:snsapi_base和scope_userinfo

https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redire

snsapi_base 发起的网页授权,是用来获取进入页面的用户的 openid 的,并且是静默授权并自动跳转到回调页的。用户无感知

当当当,刚好公司有个项目,就拿来操作了。

一顿操作猛如虎,按照文档用 snsapi_userinfo,可以正常获取用户的头像和昵称,就这样项目也平稳上线了。

一天领导来,说每次都要授权,好麻烦,能不能去掉呢?

然后就信誓旦旦的说当然可以了。然后就换成snsapi_base接口上线了。

然后,然后,就掉坑里了

一天公司新来的同事,从未使用过此公众号,登陆后莫名其妙发现没有头像,没有昵称

还好领导暂未发现。。。就抓紧排查。。。

看了日志,返回了一堆的 48001 错误:

这就奇怪,我扫了一下码,却发现接口返回正常,于是拿了同事的收几来试一下,嘣嘣嘣,获取不到了

为了验证我想法,再拿其他同事(ps:类似新用户),果真获取不到。。。

总结:对于新用户要首次要获取头像和昵称必须使用scope_userinfo