详解微信开发中snsapi_base和snsapi_userinfo及静默授权的实现

作者: siediyer 分类: PHP 发布时间: 2023-08-21 18:57

snsapi_base与snsapi_userinfo属于微信网页授权获取用户信息的两种作用域

snsapi_base只能获取access_token和openID

snsapi_userinfo可以获取更详细的用户资料,比如头像、昵称、性别等

首先,这里的access_token与基础access_token(比如自定义菜单用到的)是不一样的。两者区别如下:

网页授权的access_token在每次获取openID时一起更新,在接口调用频次限制中为“无上限”

基础access_token一般限制为2000次/日,需要自己保存起来并定时更新

其次,当作用域为snsapi_userinfo时,根据官方文档中的说明,需要用户进行点击授权,但是我发现,有一个办法可以静默获得而不需要点击授权。方法如下:

1、通过snsapi_base,同时获得access_token和openid

2、把这里的access_token和openid用于https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN 接口中

3、请求成功之后,就静默获取到用户详细资料了。

以上方法的前提是同一个公众号内,用户关注了。如果是借用其他的公众号的,是需要用户点击授权的。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

Title - Artist
0:00