微信小程序在java后台获取用户unionid等敏感信息

最近在弄小程序,阅读了微信官方文档,上面说可以在后台获取用户的openid和unionid这些敏感信息,当然网上也有不少帖子,有的是在前台获取的,不过这里不太建议把这些敏感信息放在前台,毕竟不太安全。。。你懂得。如果你是一名Java工程师的话那么恭喜你,在接下来的官方文档中会让你气不打一出来,为啥?因为敏感信息放在了微信的加密字段里,官方的对称解密demo有php,node..。。。等。就是java,这里给大家分享一下,当然也借鉴了网上很多骨灰级大神的文章。

小程序代码如下:

// 登录
    wx.login({
      success: function (r) {
        var code = r.code;//登录凭证
        if (code) {
          //2、调用获取用户信息接口
          wx.getUserInfo({
            success: function (res) {
              console.log({ encryptedData: res.encryptedData, iv: res.iv, code: code })
              //3.解密用户信息 获取unionId
              //...
              //3.请求自己的服务器,解密用户信息 获取unionId等加密信息
              wx.request({
                url: '',//自己的服务接口地址
                method: 'post',
                header: {
                  'content-type': 'application/x-www-form-urlencoded'
                },
                data: { encryptedData: res.encryptedData, iv: res.iv, code: code },
                success: function (data) {

                  //4.解密成功后 获取自己服务器返回的结果
                  if (data.data.status == 1) {
                    var userInfo_ = data.data.userInfo;
                    console.log(userInfo_)
                  } else {
                    console.log('解密失败')
                  }

                },
                fail: function () {
                  console.log('系统错误')
                }
              })
            },
            fail: function () {
              console.log('获取用户信息失败')
            }
     
  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值