微信小程序怎么登录(微信小程序openid解析用户信息)

一、登录通过 wx.login() 获取到用户登录状态之后,需要维护登录态。要注意不应直接把 session_key、openid 等字段作用户的标识或者 session 为了标识,而应自己派发一个 session 登录态。开发者自己生成的 session,应保证其安全性且不应设置较长的过期时…

一、登录

通过 wx.login() 获取到用户登录状态之后,需要维护登录态。

要注意不应直接把 session_key、openid 等字段作用户的标识或者 session 为了标识,而应自己派发一个 session 登录态。

开发者自己生成的 session,应保证其安全性且不应设置较长的过期时间。session 派发到小程序客户端后,可将其存在 storage ,用于后续通信使用。


微信小程序怎么登录(微信小程序openid解析用户信息)

通过wx.login()获取code,发送给服务器,然后去请求微信服务器换取得到对应的openid与session_key.

openid是该用户在小程序中的唯一标识,用于模板通知之类的。

session_key就用来解密用户的敏感信息(unionid之类的)。

unionid是微信用户在所有微信平台下的唯一标识.

二、数据的加密

wx.login()登录之后。获取用户信息。


微信小程序怎么登录(微信小程序openid解析用户信息)

其中一些不敏感的信息在返回的 result中的userInfo里。

如果想要获取敏感信息。openid,unionid之类的。则需要从密文中去解密得到。

而密文则在encryptedData这个字段当中。我们去请求我们服务器去解密然后得到敏感信息后则可以保存起来。


微信小程序怎么登录(微信小程序openid解析用户信息)

接口如果涉及敏感数据(如wx.getUserInfo当中的 openId 和unionId ),接口的明文内容将不包含这些敏感数据。

如果需要获取敏感数据,需要对接口返回的加密数据( encryptedData )进行对称解密。 解密算法如下:

对称解密使用的算法为 AES-128-CBC,数据采用PKCS#7填充。

对称解密的目标密文为 Base64_Decode(encryptedData),

对称解密秘钥 aeskey = Base64_Decode(session_key), aeskey 是16字节

对称解密算法初始向量 iv 会在数据接口中返回。

趣懂得网所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们1875979182@qq.com 反馈 本站将在三个工作日内改正。

发表评论

您的电子邮箱地址不会被公开。