加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

微信小程序数据字段大小写问题

发布时间:2020-12-14 19:15:08 所属栏目:资源 来源:网络整理
导读:这两天在开发微信小程序登录以及加解密的时候,因为数据大小写的问题被坑了一把。 场景 小程序调用 wx.login ?时会获得 code ?,传输给服务端可以得到 openid ?, unionid(绑定了开放平台) ?,249); border: 0px; font-weight: 600; font-size: 14px;'>session

这两天在开发微信小程序登录以及加解密的时候,因为数据大小写的问题被坑了一把。

场景

  1. 小程序调用 wx.login?时会获得 code?,传输给服务端可以得到 openid?,unionid(绑定了开放平台)?,249); border: 0px; font-weight: 600; font-size: 14px;'>session_key
  2. 小程序调用 getUserInfo?会获得 encrypted_data?,249); border: 0px; font-weight: 600; font-size: 14px;'>iv?,解密后得到 unionId?,249); border: 0px; font-weight: 600; font-size: 14px;'>openId
  3. unionid?和 openid?这两个场景 键名大小写是不同的

例子

  1. 服务端根据 code获取session_key?返回结果如下:

    {
        "session_key": "我是session_key","openid": "我是openid","unionid": "我是unionid"
    }
    
  2. 服务端根据 session_key解密encrypted_data和iv?返回结果如下:

    {
        "openId": "OPENID","nickName": "NICKNAME","gender": GENDER,"city": "CITY","province": "PROVINCE","country": "COUNTRY","avatarUrl": "AVATARURL","unionId": "UNIONID","watermark":
        {
            "appid":"APPID","timestamp":TIMESTAMP
        }
    }
    

可以看到两次同样的字段 openid?和 unionid?大小写是不同的,此处容易踩坑。

结论

  1. 服务端根据 code换session_key/openid/unionid?是 小写
  2. 服务端根据 encrypted_data和iv?解密得到的 openId/unionId?是 大写

最后,祝大家在开发过程中少踩坑。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读