简单梳理:
1.仅获取微信头像和昵称(仅限于展示)
利用微信小程序官方提供的开放能力中的open-data标签
<open-data type="groupName" open-gid="xxxxxx"></open-data>
<open-data type="userAvatarUrl"></open-data>
<open-data type="userNickName" lang="zh_CN"></open-data>
注释:
1.type='groupName' 拉取群名称;
2.type='userAvatarUrl' 用户头像;
3.type='userNickName' 用户昵称;
2.获取用户基本信息
使用官方提供的button标签 open-type=‘getUserInfo’
wxml:
<button open-type="getUserInfo" bindgetuserinfo="bindGetUserInfo">授权登录</button>
js:
getUserInfo: function(e) {
console.log(e.detail.userInfo)
}
注释:
1.这个能获取的信息大致有头像、昵称、国家、省、市、语言、性别等
2.更详细的信息在e.detail可以拿到,比如iv,encryptedData,signature这种的
3.获取用户手机号
使用官方提供的button标签 open-type=‘getPhoneNumber’
wxml:
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>
js:
getPhoneNumber (e) {
console.log(e.detail.errMsg)
console.log(e.detail.iv)
console.log(e.detail.encryptedData)
}
注释:
1.想要获取手机号要先调用wx.login接口(官方提示)
2.由于手机号涉及隐私,所以前端无法直接获得,只能拿到iv和encryptedData加密串,需要传给后台进行解密获得
3.如果授权登录和获取手机号功能都要实现,需要两个按钮才能实现;
4.这个iv和用户信息里面的iv是两个不同的数据,不要混淆