RT, 如果用户已经授权登录过小程序A(已绑定到开放平台),下次可以直接通过 code2Session 换取到该用户在小程序A中的 UnionID 么?
文档中描述如下,
如果开发者帐号下存在同主体的公众号或移动应用,并且该用户已经授权登录过该公众号或移动应用。开发者也可以直接通过
wx.login
+code2Session
获取到该用户 UnionID ,无须用户再次授权。
没有提及小程序。
现在实际遇到的情况是:
小程序A已绑定到开放平台,用户首次通过主动授权登录了小程序A;一段时间后,当用户再次进入小程序A时,直接通过 code2Session 无法获取到 UnionID
第一次授权的时候就直接把openid和UnionID都获取到了,两者的对应关系也有了,那以后有没有登陆只要有openid,自己去数据库匹配就好了,还要通过微信干啥?
由于 UnionID 在开放平台下全局唯一,我们的产品也覆盖了平台下的多个端,所以当时就以 UnionID 为核心条件来查询用户记录了,仅在 UnionID 字段上建了索引。感觉,也不能在每一个端的 OpenID 字段上都建索引吧。基于此,才希望能优先获取到 UnionID 的。
openId就根本不用吗?我记得要关注公众号才能直接login获取到unionId,授权了的话要用getuserinfo去获取。
楼主问题解决了吗
必须是同一主体,开放平台主体 = 小程序主体
是的,是同一主体。