收藏
回答

用户已授权登录过小程序,下次可以直接通过 code 换取到 UnionID 么?

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.login 客户端 不限 不限

RT, 如果用户已经授权登录过小程序A(已绑定到开放平台),下次可以直接通过 code2Session 换取到该用户在小程序A中的 UnionID 么?


文档中描述如下,

如果开发者帐号下存在同主体的公众号或移动应用,并且该用户已经授权登录过该公众号或移动应用。开发者也可以直接通过 wx.login + code2Session 获取到该用户 UnionID ,无须用户再次授权。

没有提及小程序。


现在实际遇到的情况是:

小程序A已绑定到开放平台,用户首次通过主动授权登录了小程序A;一段时间后,当用户再次进入小程序A时,直接通过 code2Session 无法获取到 UnionID

回答关注问题邀请回答
收藏

3 个回答

  • 拾忆
    拾忆
    2019-03-04

    第一次授权的时候就直接把openid和UnionID都获取到了,两者的对应关系也有了,那以后有没有登陆只要有openid,自己去数据库匹配就好了,还要通过微信干啥?

    2019-03-04
    有用 1
    回复 2
    • Recluse
      Recluse
      2019-03-04

      由于 UnionID 在开放平台下全局唯一,我们的产品也覆盖了平台下的多个端,所以当时就以 UnionID 为核心条件来查询用户记录了,仅在 UnionID 字段上建了索引。感觉,也不能在每一个端的 OpenID 字段上都建索引吧。基于此,才希望能优先获取到 UnionID 的。

      2019-03-04
      回复
    • 2019-03-05回复Recluse

      openId就根本不用吗?我记得要关注公众号才能直接login获取到unionId,授权了的话要用getuserinfo去获取。

      2019-03-05
      回复
  • 樱桃
    樱桃
    2019-11-22

    楼主问题解决了吗

    2019-11-22
    有用
    回复
  • 铭锋科技
    铭锋科技
    2019-03-04

    必须是同一主体,开放平台主体 = 小程序主体

    2019-03-04
    有用
    回复 1
    • Recluse
      Recluse
      2019-03-04

      是的,是同一主体。

      2019-03-04
      回复
登录 后发表内容