微信小程序5-获取用户信息

本文详细介绍了在微信小程序中获取用户信息的方法,包括利用button组件的getUserInfo属性、wx.getUserInfo() API、wx.login()获取登录凭证、通过wx.request()发送HTTPS请求以及使用open-data组件展示微信开放数据。

获取用户信息

1.button

 button的open-type属性有一个getUserInfo属性
 获取用户信息,可以从bindgetuserinfo回调中获取到用户信息
bindgetuserinfo属性绑定一个自定义函数,用户信息作为参数传入

html
<button open-type="getUserInfo" bindgetuserinfo="getuserinfo"></button>
<!-- 只有当open-type设置为getUserInfo时有效 -->
js
getuserinfo(info){
	console.log(info)
}
2.wx.getUserInfo()

 获取用户信息

wx.getUserInfo({
	//是否带上登录态信息
	//值为true,调用过wx.login()且登录信息尚未过期,返回的信息会包含encryptedData, iv 等敏感信息
	withCredentials:true/false,
	//显示用户信息的语言
	//en:英文/zh_CH:简体中文/zh_TW:繁体中文
	lang:en/zh_CH/zh_TW
	//成功后执行的回调函数
	success:res=>{
		//用户信息,不包含敏感信息
		console.log(res.userInfo)
	}
})
3.wx.login()

 调用接口获取登录凭证
 通过凭证进而换取用户登录态信息,包括用户的唯一标识(openid)及本次登录的会话密钥(session_key)等

wx.login({
	success:res=>{
		//用户登录凭证
		console.log(res.code)
	}
})
4.wx.request()

 发起 HTTPS 网络请求

wx.request({
	// 开发者服务器接口地址,必填
	// appid : 小程序appid
	// secret : 小程序appSecret
	// js_code : wx.login()获取的code
	// gran_type : 授权类型,此处只需填写 authorization_code
	url:`https://api.weixin.qq.com/sns/jscode2session?
		appid=APPID&
		secret=SECRET&
		js_code=JSCODE&
		grant_type=authorization_code`,
	// HTTP请求方法,默认GET
	method:	GET,
	success:res=>{
		// 用户的唯一标识符 openid
		console.log(res.data.openid)
	}
})
5.open-data

 用于展示微信开放的数据

<open-data type="groupName" open-gid="xxxxxx" lang="XXX"></open-data>
<!-- 
	type : 开放数据类型
		groupName : 拉取群昵称
		userNickName : 用户昵称
		userAvatarUrl : 用户头像
		userGender : 用户性别
		userCity : 用户所在城市
		userProvince : 用户所在省份
		userCountry : 用户所在国家
		userLanguage : 用户的语言
	lang : userInfo的语言,type="user..."时生效
		en/zh_CH/zh_TW 英文/简体中文/繁体中文
	open-gid : type="groupName"时生效,群id
	open-gid 获取需要使用 wx.getShareInfo()
 -->
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值