小程序已绑定微信开放平台为什么还是获取不到unionid?

发布于 7 年前作者 agu4798 次浏览最后编辑 7 年前来自 ask

我想反馈一个BUG:

首先我的需求是小程序获取unionid,按照文档的步骤通过wx.login获取code再用code调

https://api.weixin.qq.com/sns/jscode2session?
appid=%s&secret=%s&js_code=%s&grant_type=authorization_code

获取unionid,但是返回的只有openid

微信开放平台已经绑定过了,大概2月2号也测试过,能取到unionid,之后代码一直没动,2月6号再测就取不到了,求大神帮忙看看

10 回复
caowei
caowei1 楼6 年前

那么请问你仔细阅读文档了么

jie11
jie113 楼6 年前

@sh 兄弟,这个问题我遇到过。

第一:您获取到过unionid,应该是您这个账号是从统一开放平台下(比如公众号)下进到小程序,这时候调用jscode2session接口肯定会有返回unionid

第二:过了2天获取不到了,可能是这个用户没有从统一开放平台下公众号进入到小程序,而是直接搜索您线上的小程序进入的小程序,这时候获取unionid就只能根据前端wx.getUserInfo返回给你的iv,encryptedData来解密获取到用户的unionid。具体搜索 ‘小程序解密用户基本信息’。

ps:别问我为啥知道,因为我加了一晚上班,才搞清楚这个东西,出问题的用户确实是直接搜索小程序进的!

还有如果用户直接从关联的公众号进入小程序,前端的wx.login也可以获取到unionid。

pyan
pyan4 楼6 年前

mark

xiaping
xiaping5 楼6 年前

光获取openid 这个坑就卡了我两天,官方文档也有时候让人误会以为能直接取到,作为小白,最后才弄清楚拿到code丢给后台,后台处理再返回给我openid,官方文档可没说的这么清楚。

csu
csu6 楼6 年前

还有如果用户直接从关联的公众号进入小程序,前端的wx.login也可以获取到unionid。


----------


同一个微信开放平台下的相同主体的App、公众号、小程序,如果用户__已经__关注公众号,或者__曾经__登录过App或公众号,则用户打开小程序时,开发者可以直接通过wx.login获取到该用户UnionID,无须用户再次授权。

请注意已经和曾经两个词、这就是为什么公众号进入能获取的到,因为公众号进入用户基本是关注了你的公众号的,所以获取的到。

dlin
dlin7 楼6 年前

请问你获取不到 unionid 的用户又关注你的公众号或者同主体下的其他帐号么

gaochao
gaochao8 楼6 年前

我知道用wx.login获取不到unionid是正常的  因为我没有关注过公众号

WXOPEN Club 内容图片

我调的是这个接口

WXOPEN Club 内容图片

获取unionid的条件我已经满足了,上面也截图过了,但就是获取不到

ping51
ping519 楼6 年前

我也遇到这个问题

绑上开放平台取不到 unionid

是不是 开放平台响应需要时间?

guiying52
guiying5210 楼5 年前

没有