官方提供的最新方法Open-data标签,使用这个标签可以不用用户授权直接显示头像和昵称
例子:
<!-- 获取用户头像直接显示在小程序中 -->
<open-data type="userAvatarUrl"></open-data>
<!-- 获取用户昵称直接显示在小程序中 -->
<open-data type="userNickName" lang="zh_CN"></open-data>
可以在button标签中将open-data作为一个属性写入进去,这样效果就变为在点击时获取头像和昵称
同样的方式获取手机号 微信开发文档-获取手机号
需要将 button 组件open-type
的值设置为getPhoneNumber
,当用户点击并同意之后,可以通过bindgetphonenumber
事件回调获取到微信服务器返回的加密数据, 然后在第三方服务端结合session_key
以及app_id
进行解密获取手机号。
<button lang="zh_CN" open-type='getUserInfo' bindgetuserinfo="getUserInfo"></button>
<button class="accredit-btn" open-type='getPhoneNumber' bindgetphonenumber='getPhoneNumber'>{{accreditFail?'重新授权':'授权手机号'}}</button>
获取方法在函数中得到
getUserInfo: function (e) {
//获取用户头像昵称城市等信息
console.log(e.detail.userInfo);
},
getPhoneNumber: function (e) {
console.log(e.detail.errMsg)
console.log(e.detail.iv)
console.log(e.detail.encryptedData)
}