公众号是已认证的服务号,并已绑定微信开放平台。在使用过程中发现个别用户无法获取到unionid,使用的API为:GET https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
公众号appid:wxd683eed3c6395e8f
openid: oDjp3xKH0L3w4xKJZTXurnjRywD8
授权scope:snsapi_base
框架类型 | 问题类型 | API/组件名称 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|
小程序 | Bug | https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN | 微信iOS客户端 | 未知 | 未知 |
公众号是已认证的服务号,并已绑定微信开放平台。在使用过程中发现个别用户无法获取到unionid,使用的API为:GET https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
公众号appid:wxd683eed3c6395e8f
openid: oDjp3xKH0L3w4xKJZTXurnjRywD8
授权scope:snsapi_base
1 个回答
scope为snsapi_base是无法获取到unionid的,
你现在有些用户能获取到是因为关注了公众号,
未关注公众号的用户
scope为snsapi_userinfo时才能获取到unionid,
详见:
https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/union-id.html
https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html
3、用户管理类接口中的“获取用户基本信息接口”,是在用户和公众号产生消息交互或关注后事件推送后,才能根据用户OpenID来获取用户基本信息。这个接口,包括其他微信接口,都是需要该用户(即openid)关注了公众号后,才能调用成功的。
并未明确说明scope为snsapi_base是无法获取到unionid的
而且通过实际实践也说明了需要通过scope为snsapi_userinfo的授权方式才能获得unionid
是不是那些以snsapi_base获取用户信息的用户,
在你们把微信公众号关联到开放平台后,
那些用户之前获取完用户信息之后,
就一直是用过你们自己的cookie之类的登录你们系统,
从未在在你们把微信公众号关联到开放平台后,
通过微信那边的snsapi_base的方式重新授权过