获取 wx.getUserInfo 接口后续将不再出现授权弹窗,请注意升级(微信小程序开发)

微信小程序开发时,Console 提示:获取 wx.getUserInfo 接口后续将不再出现授权弹窗,请注意升级

 

错误原因:

直接调用这个方法依旧可以获取用户信息, 但是如果你之前没有点击过那个授权的小弹出框,这个方法就直接报错了,需要你直接去引导用户去授权。

解决方法:

微信更新api后,wx.getUserInfo在开发和体验版本都不能弹出授权窗口。使用该接口将不再出现授权弹窗,请使用 <button open-type="getUserInfo"></button> 引导用户主动进行授权操作。

wx.getUserInfo({
        withCredentials: true,
        success: function (res) {
          //此处为获取微信信息后的业务方法
        
        },
        fail: function () {
         //获取用户信息失败后。请跳转授权页面
         wx.showModal({
          title: '警告',
          content: '尚未进行授权,请点击确定跳转到授权页面进行授权。',
          success: function (res) {
           if (res.confirm) {
            console.log('用户点击确定')
            wx.navigateTo({
             url: '../tologin/tologin',
            })
           }
          }
         })
        }
       })

 调用此方法失败后,跳转授权页面

<button  open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">授权登录</button>

 Js中

bindGetUserInfo: function(e){
   var that = this;
   //此处授权得到userInfo
   console.log(e.detail.userInfo);
   //接下来写业务代码

   //最后,记得返回刚才的页面
   wx.navigateBack({
   delta: 1
   })
  }

 

!!!!!!!!!!!!!!!!!!!!!!!!!

另外:开发工具需要这么设置,否者用接口的时候会报错

报错图片:

posted @ 2019-03-11 23:16  江河湖泊  阅读(7455)  评论(1编辑  收藏  举报