html52.com
我爱小程序-开发者交流社区

wx.getUserInfo接口修改,主要工作量在前端,后端可以说没影响








针对不同主体的公众号和小程序需要打通用户的情况



根据

获取用户信息接口优化调整

小程序•小故事(6)——微信登录能力优化 文章的说明,

前端需要增加一个流程,前端其实应该先调用wx.getSetting,获取授权列表,比如需要userInfo,如果没有授权userInfo,则需要先显示一个对用户友好的授权页面,用户主动点击授权后,后面流程和之前wx.login => wx.getUserInfo =>自己小程序后端的login接口流程是一样的。




// 针对不同主体的公众号和小程序需要打通用户的情况

// 可以通过 wx.getSetting 先查询一下用户是否授权了 "scope.userInfo"

wx.getSetting({
   success(res) {
       if (res.authSetting['scope.userInfo']) {

       

           // 自己小程序后端的用户数据接口,需要前面自己login接口返回的token

// token怎样从Storage保存读取,失效后怎么处理,这就不写了

// 如果觉得token保存在Storage不好,那就每次都走下wx.login => wx.getUserInfo =>自己小程序后端的login接口流程


          wx.request({
            url: 'https://test.com/user',
            data: {

             token: token

           },

           success: function(res) {}          

         })

       } else {

          // 显示对用户友好的授权引导页,页面主要元素就是授权授权获取您的用户信息

// button open-type="getUserInfo" bindgetuserinfo="userInfoHandler" 授权 button

       }

   }

})




userInfoHandler(e){

  console.log(e.detail)

  // 自己小程序后端的login接口,后端通过encryptedData,iv获得Union,打通账户


}





网友回复

不开心的时候,喝阔乐:

不对吧==  wx.login  和  wx.getUserInfo 是分开的吧,其次 wx.getUserInfo 后面可能要作废啊, button open-type getUserInfo 的这种形式去获取 是和"wx.getUserInfo"一样的

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付