通过code2session获取unionId条件问题
发布于 6 年前 作者 tyuan 16708 次浏览 来自 问答

绑定了开发者帐号的小程序,可以通过下面 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 回复

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

正解

回到顶部