已经授权过头像昵称了怎么还能在拿到encryptedData, iv?
发布于 5 年前 作者 fang66 11287 次浏览 来自 官方Issues

大家好  我先说一下我授权头像怎么写的

<button  withCredentials=“true” open-type=“getUserInfo” bindgetuserinfo=“getUserInfo”>登录/注册</button>

js:

getUserInfo:function(e){

打印e

e.detail.encryptedData我能拿到我想要的encryptedData和iv这两个给后端  

}

这是授权头像的代码  后端并没有收集unionid  但是现在他需要unionid需要我拿到encryptedData和iv

我看文档上面的用的这个wx.getUserInfo这个接口说需要調用过

我试了一下直接调返现会走到fail里面 我不知道怎么办了,

 我授权头像的是用的上面写的代码   但是我又觉得我之前授权头像的时候应该用应该用下面的这个代码授权头像  我不太清求指导

wx.getSetting({
  success(res) {
    if (!res.authSetting['scope.userInfo']) {
      wx.authorize({
        scope: 'scope.userInfo',
        success () {
          // 用户已经同意小程序使用录音功能,后续调用 wx.startRecord 接口不会弹窗询问
          wx.startRecord()
        }
      })
    }
  }})

现在应该怎么办能获取到encryptedData和iv

求大神帮助,感谢

1 回复

var t = this

// 查看是否授权

wx.getSetting({

    success(res) {

        if (res.authSetting[‘scope.userInfo’]) {

            wx.checkSession({

                success() {

                    t.getInfo()

                },

                fail() {

                    // session_key 已经失效,需要重新执行登录流程

                    //重新登录

                    wx.login({

                        success(res) {

                           t.getInfo()

                        }

                    })

                }

            })

        }else{

            // 跳转到你授权头像按钮所在的页面,让用户授权

        }

    }

})

==============

getInfo: function(){

    wx.getUserInfo({

        withCredentials: !0,

        success: function (res) {

            console.log(res)

        },

        fail(res) {

            console.log(res)

        }

    })

}

回到顶部