收藏
回答

通过code2session获取unionId条件问题

绑定了开发者帐号的小程序,可以通过下面 4 种途径获取 UnionID。

  1. 调用接口 wx.getUserInfo,从解密数据中获取 UnionID。注意本接口需要用户授权,请开发者妥善处理用户拒绝授权后的情况。

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

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

  4. 小程序端调用云函数时,当满足 UnionID 获取条件时可在云函数中通过 cloud.getWXContext 获取 UnionID

文档给到有4个条件,针对于第3条不理解,意思是说:①用户只要登录过一次同主体的公众号或移动应用,不管多久之前登录的 ,小程序这个接口都能拿到UnionID ;还是说:②用户最近登录过同主体的公众号,还在授权期内才能拿到?(微信用户授权登录一次,一段时间内不需要再次授权,我理解为授权期)

如果是①的话,只要code2session接口没有返回UnionID就能说明:用戶从来没有授权登录过同主体的公众号或移动应用

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

1 个回答

  • Special
    Special
    2018-11-02

    ①用户只要登录过一次同主体的公众号或移动应用,不管多久之前登录的 ,小程序这个接口都能拿到UnionID ;


    正解

    2018-11-02
    有用
    回复 2
    • 杉星
      杉星
      2018-11-23

      解密数据获取 UnionID 可否在本地或者云函数中完成?

      2018-11-23
      回复
    • 宋晓光
      宋晓光
      2019-04-19

      只能通过getUserinfo 获取么,wx.login可以获取unionid 么

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