当前位置:首页 >> 网络编程

微信小程序判断用户是否需要再次授权获取个人信息

一、index.js设置如下

//获取用户的授权信息,放到本地缓存中
  wx.getSetting({
   success: (res) => {
    if(res.authSetting['scope.userInfo'])
    {
     wx.setStorage({
      key: 'can_getuserinfo',
      data: 1,
     })
    }
    else
    {
     wx.setStorage({
      key: 'can_getuserinfo',
      data: 0,
     })
    }
   }
  }),
  //1:从本地缓存中获取数据,如果获取到根据结果显示Index页面的授权按钮是否显示,
  //2:如果从本地缓存获取不到数据则说明用户清空了本地数据,默认设置为0,让用户重新授权
  wx.getStorage({
   key: 'can_getuserinfo',
   success: function (res) { 
    console.log(res.data);
    that.setData({
     can_getuserinfo:res.data
    })
   },fail:function()
   {
    that.setData({
     can_getuserinfo: 0
    })
   }
  })
  
 },

二、index.wxml设置如下

<view wx:if="{{can_getuserinfo==0}}">
<text>\n</text>
<text>\n</text>
<text>\n</text>
<button wx:if="{{canIUse}}" open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">授权登录</button>
<view wx:else>请升级微信版本</view>
</view>

三、效果

效果是如果用户授权过了,则直接首页不显示授权按钮,直接进入业务页面,如果用户没授权,则显示授权按钮让用户选择授权

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。