收藏
回答

小程序 jscode2session 接口偶尔不返回 UnionId

在开发小程序的过程出 出现 jscode2session 接口偶尔不会返回 unionId的问题


在文档中说明只要公众号绑定开放平台和开发者验证 就会返回 unionId 但还是有一部分用户不会返回

且在一段时间之后相同用户又会返回 unionId .


在一些帖子中表示 如果用户关注或之前登录过在 login 方法中会直接 返回 unionId

但jscode2session接口并非wx.login 也不属于小程序前台接口,想知道为何会出现啊偶尔不反悔 unionId的问题


且当程序使用 unionId作为表示注册用户标识时,第一次登录如果不返回unionId 那还要后期实现修改用户注册信息吗??

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

5 个回答

  • Band
    Band
    2017-11-15

    请注意文档当中unionId下发的条件:

    https://mp.weixin.qq.com/debug/wxadoc/dev/api/uinionID.html


    遇到没有下发unionid的case,就是微信用户没有满足对应条件导致。请自行检查哈


    2017-11-15
    有用
    回复 1
    • Curl_W
      Curl_W
      2023-02-16
      2023还是没能解决,看来只有付费方式才可以稳定返回
      2023-02-16
      回复
  • Deanllv
    Deanllv
    2017-11-16

    我这个问题 首先我 unionId 不是在 wx.login中获取的

    我是在后台 通过jscode2session 接口获取并有时不返回 unionId


    按照文档所说只要用户授权 就一定会获取到 unionId ,但在用户授权后 使用 code 访问jscode2session接口依旧有时不会返回 unionId,不知道这是否就是 文档中说的 wx.login


    现在我们的执行逻辑 是 js调用  wx.login 和 userinfo 之后获取code等,code上传服务器 服务器通过 jscode2session接口获取 sessionKey,unionId等,这时接口应该返回 sessionKey,openId 以及 unionId


    现在出现了 jscode2session 无法返回unionId,造成的结果就是要使用openId登录,就算以后这个用户 通过开放平台下其他渠道登录

    能拿到 unionId,也无法和之前openId关联,我不知道这个是否就是现在的 "正确逻辑"呢


    那这样的话结论也就是说,只要用户没关注公众号,或者之前没登录过,就算通过接口(jscode2session)也只能拿到 openId而拿不到 unionId?



    2017-11-16
    有用 3
    回复 1
    • Curl_W
      Curl_W
      2023-02-16
      估计只有vip用户才可以稳定返回了,其他的一定是限流了
      2023-02-16
      回复
  • 罗永辉
    罗永辉
    2023-03-08

    我通过绑定解决了这个烦人的问题。

    2023-03-08
    有用
    回复
  • _design
    _design
    2022-11-09

    微信的接口是真TM垃圾

    2022-11-09
    有用
    回复
  • Deanllv
    Deanllv
    2017-11-16

    也就是说如果用户直接进入小程序,无论如何也拿不到 unionId,只能使用 openId作为用户标识


    然后假如再使用 同样的账号登录了 APP 那么App中是能拿到 unionId的对么?但是这时 unionId没有对应用户,openId也是独立Id ,无法标识和登录小程序的为同一个账号??


    那现在有多少种 openId 的可能性呢??小程序一个,公众号一个,APPSDK一个??

    2017-11-16
    有用
    回复
登录 后发表内容