自我介绍
我是IT果果日记,微信公众号请搜索 IT果果日记
一个普通的技术宅,定期分享技术文章,欢迎点赞、关注和转发,请多关照。
微信小程序用户基本信息有哪些?
除了基本信息,微信还会提供openId和unionId,它们有什么作用和区别?
在获取用户信息的过程中,如何知道明文数据是否被篡改了?
session_key 该如何使用呢?
带着这些问题,我们开始今天的学习。
获取用户基本信息
小程序提供了一个 wx.getUserProfile(OBJECT) 方法来获取用户的信息。以前的老版本是用的 wx.getUserProfile(OBJECT) 方法,现在以及被官方不推荐使用了。
用户信息分为用户基本信息和用户openId、UnionId。基本信息是明文的,而openId和UnionId是加密数据。这两种类型的数据都由wx.getUserProfile(OBJECT)方法返回。
用户基本信息包括以下7项:
avatarUrl 用户微信头像的URL地址。
city 城市。
country 国家。
gender 性别,1表示男,2表示女,0表示未知。
language 语言区域。
nickName 昵称。
province:省份。
在小程序中,用户的基本信息可以轻易获得,他们是明文的、不加密的。但 openId 和 UnionId 是加密的。什么是openId和UnionId呢?可以将openId和UnionId理解为用户在微信应用中的id号。
他们的区别是:
openId只代表用户在某个微信应用下的id号;
而UnionId是跨应用的,同一用户在同一开发者的多个应用里,UnionId是唯一的。
官方文档对于UnionId的描述非常清楚:如果开发者拥有多个移动应用、网站应用和公众账号(包括小程序),可通过UnionId区分用户的唯一性,因为只要是同一个微信开放平台账号下的移动应用、网站应用和公众账号(包括小程序),用户的UnionId就是唯一的。换句话说,同一用户在同一个微信开放平台下的不同应用中,UnionId是相同的。
所以,openId不能跨应用,如果要在多应用间统一用户身份,请使用UnionId。这里要注意,在小程序中使用UnionId首先需要前往微信开放平台绑定小程序。请参考官方文档:
微信开放平台绑定小程序流程
登录