小程序开发-1:用户登录授权没反应-遇坑

 一个看似没有什么问题的代码,但点了好几次登录授权都没有反应。

getUserProfile() {
    // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认,开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
    wx.getUserProfile({
      desc: '用于展示用户信息,绑定用户基本信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
      success: (res) => {
        console.log(res)
        //存储已经保存的用户数据
        wx.setStorageSync('userInfo', res.userInfo)
        console.log("存储用户数据<getUserProfile>:" + res.userInfo)
      }
    })
  }

最终从fail分支这里找到了原因:

getUserProfile() {
    // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认,开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
    wx.getUserProfile({
      desc: '用于展示用户信息,绑定用户基本信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
      success: (res) => {
        console.log(res)
        this.setData({
          userInfo: res.userInfo,
          hasUserInfo: true
        })
        //存储已经保存的用户数据
        wx.setStorageSync('userInfo', res.userInfo)
        console.log("存储用户数据<getUserProfile>")
      },
      fail:(err)=>{
        console.log(err)
        wx.showToast({
          title: '失败:'+err,
          duration:3000
        })
      }
    })
  }

根据请求的结果分析:

{errMsg:"getUserProfile:fail desc length does not meet the requirements"}


{errMsg:"getUserProfile:失败 desc(描述) 长度不符合要求"}

我也是纳闷了,这个信息多余的都不能有!

因此解决方案(尽量精简desc的描述信息):

getUserProfile() {
    // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认,开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
    wx.getUserProfile({
      desc: '展示用户信息', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写
      success: (res) => {
        console.log(res)
        //存储已经保存的用户数据
        wx.setStorageSync('userInfo', res.userInfo)
        console.log("存储用户数据<getUserProfile>:" + res.userInfo)
      }
    })
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值