千家信息网

小程序如何获取用户信息失败

发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章主要介绍小程序如何获取用户信息失败,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在使用小程序时,很多人会不授权导致授权失败场景,但是小程序第二次不在启动授权信息弹层,遇
千家信息网最后更新 2025年01月16日小程序如何获取用户信息失败

这篇文章主要介绍小程序如何获取用户信息失败,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

  在使用小程序时,很多人会不授权导致授权失败场景,但是小程序第二次不在启动授权信息弹层,遇到这种情况,为了用户体验我们需要这样处理:

function isEmptyObject(e) {  //对象是否为空;判断是否是第一次授权,非第一次授权且授权失败则进行提醒  var t;  for (t in e)    return !1;  return !0}
function checkSettingStatu(cb) {  //授权处理  var that = this;  // 判断是否是第一次授权,非第一次授权且授权失败则进行提醒  wx.getSetting({    success: function success(res) {      var authSetting = res.authSetting;      if (isEmptyObject(authSetting)) {        // console.log('首次授权');      } else {        // console.log('不是第一次授权', authSetting);        // 没有授权的提醒        if (authSetting['scope.userInfo'] === false) {          wx.showModal({            title: '用户未授权',            content: '如需正常使用此小程序功能,请您按确定并在设置页面授权用户信息',            showCancel: false,            success: function (res) {              // 此处为了用于 Android 系统区分点击蒙层关闭还是点击取消按钮关闭省去了res.confirm,res.cancel判断              // 点击蒙层同样触发开启设置              wx.openSetting({                success: function success(res) {                  if (res.authSetting['scope.userInfo'] === false) {                    checkSettingStatu(cb);                  } else {                    userinfor();                  }                }              });            }          })        }      }    }  });}
function userinfor(){    //获取用户信息    wx.login({      success: function (res) {        var code = res.code;        if (res.code) {          wx.getUserInfo({            fail: function (res) {              checkSettingStatu();            },            success: function (data) {              var encryptedData = data.encryptedData;              var iv = data.iv;              wx.request({                url: 'XXXX',                data: {                  "json": JSON.stringify({                    "type": "small_wechat_new",                    "code": code,                    "encryptedData": encryptedData,                    "iv": iv                  })                },                method: 'POST',                header: {                  'content-type': 'application/x-www-form-urlencoded'                },                success: function (res) {                  //wx.setStorageSync('user_id', res.data.data.user_id);                  //wx.setStorageSync('token', res.data.data.token);                  //wx.setStorageSync('avatar', res.data.data.avatar);                  //wx.setStorageSync('nickname', res.data.data.nickname);                }              })            }          })        }      }    })  }  module.exports = {    checkSettingStatu: checkSettingStatu,    userinfor: userinfor  }

以上是"小程序如何获取用户信息失败"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

0