微信小程序填坑之路(六):wx.getUserInfo 接口的变动与使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liyi1009365545/article/details/80389857

问题

在微信小程序开发中,获取用户信息是经常会用到的!在之前,我们直接调用wx.getUserInfo接口,就可以直接获取用户的信息,然而为了安全考虑,从2018年4月30号开始,wx.getUserInfo接口不能直接调用,需要使用 <button open-type="getUserInfo"></button> 引导用户主动进行授权操作,意外就是来的这么突然,防不胜防!!!

处理方法

1、<poen-data>:只是简单的获取信息用于显示

<poen-data>是微信的一个组件,可以用于直接显示用户的信息,根据其type属性来判断获取信息的类型

示例

其中,type="userAvatarUrl"是获取用户头像,type="userNickName"是获取用户昵称,具体使用详情点我 ,此方法仅用于直接简单的展示用户信息。

2、使用 <button open-type="getUserInfo">获取用户信息

使用此方法,即为引导用户主动授权获取用户信息,关键在于引导,主动权在用户手中,此方法相比第一种,可以直接获取到用户的具体信息,而不是仅仅展示,具体使用如下:

  • wxml中书写:<button open-type="getUserInfo" lang="zh_CN" bindgetuserinfo="onGotUserInfo">获取用户信息</button>一定要注意bindgetuserinfo="onGotUserInfo",这是获取用户信息的回调
  • js中书写:
  onGotUserInfo: function(e) {
    console.log(e.detail.errMsg)
    console.log(e.detail.userInfo)
    console.log(e.detail.rawData)
  },

3、使用wx.getUserInfo

  • 当用户未授权过,调用该接口将直接报错,即使调用授权接口去检查也没用
  • 当用户授权过,可以使用该接口获取用户信息

猜你喜欢

转载自blog.csdn.net/liyi1009365545/article/details/80389857