微信小程序维护登录态与获取用户信息openid
一、登录
通过 wx.login() 获取到用户登录状态之后,需要维护登录态。
要注意不应直接把 session_key、openid 等字段作用户的标识或者 session 为了标识,而应自己派发一个 session 登录态。
开发者自己生成的 session,应保证其安全性且不应设置较长的过期时间。session 派发到小程序客户端后,可将其存在 storage ,用于后续通信使用。
通过wx.login()获取code,发送给服务器,然后去请求微信服务器换取得到对应的openid与session_key.
openid是该用户在小程序中的唯一标识,用于模板通知之类的。
session_key就用来解密用户的敏感信息(unionid之类的)。
unionid是微信用户在所有微信平台下的唯一标识.
二、数据的加密
wx.login()登录之后。获取用户信息。
其中一些不敏感的信息在返回的 result中的userInfo里。
如果想要获取敏感信息。openid,unionid之类的。则需要从密文中去解密得到。
而密文则在encryptedData这个字段当中。我们去请求我们服务器去解密然后得到敏感信息后则可以保存起来。
接口如果涉及敏感数据(如wx.getUserInfo当中的 openId 和unionId ),接口的明文内容将不包含这些敏感数据。
如果需要获取敏感数据,需要对接口返回的加密数据( encryptedData )进行对称解密。 解密算法如下:
对称解密使用的算法为 AES-128-CBC,数据采用PKCS#7填充。
对称解密的目标密文为 Base64_Decode(encryptedData),
对称解密秘钥 aeskey = Base64_Decode(session_key), aeskey 是16字节
对称解密算法初始向量 iv 会在数据接口中返回。
大数据入门Scala大数据黄金语言在大数据的学习当中,关于编程语言选择的部分,是很多人在学习初期非常关注的。在企业大数据平台开发场景下,Java语言是主流选择,其次涉及到Spark部分,就不得不提到Scala语言。
大数据框架Spark生态实时流计算在Spark框架当中,提起流计算,那么主要就是SparkStreaming组件来负责。在大数据的发展历程当中,流计算正在成为越来越受到重视的趋势,而SparkStreaming流计
大数据入门Impala框架基础简介在大数据处理当中,核心的数据分析处理环节,衍生出了非常多的框架组件工具,基于不同场景下的需求,给出了更多可选的技术方案。比如说在交互式查询场景下,Impala就是一个不可忽视的重要
大数据入门Hbase基础架构解析Hadoop技术生态当中的Hbase,其实全称叫做HadoopDatabase,顾名思义,所谓Hbase,其实也就是Hadoop的数据,而从架构的角度来说,Hbase就是一个分布式
大数据入门HDFS数据副本存放策略大数据处理当中,数据储存始终是一个重要的环节,从现阶段的市场现状来说,以Hadoop为首的大数据技术框架,仍然占据主流地位,而Hadoop的HDFS,在数据存储方面,仍然得到重用。
错过又要等一年!618值得买手机盘点,适合的才是最好的618已经正式开启,很多人估计也买到了自己心仪的产品,笔者朋友昨晚也是等到了半夜。当然每年最火的依然还是手机圈,毕竟手机是每个人必须要的产品,甚至比女朋友还要重要。那么哪款手机才适
小米11青春版预售,年轻人最美的5G手机我们知道在前段时间,小米的春季新品发布会上,小米一共发布了四款手机,其中三款已经有人拿到了,或者说,已经有人用上了。但是还有一款小米11青春版,这款手机还没有开卖,今天也开启了预售
入手好机会!五一手机推荐,哪款才是你的菜呢?五一假期来临,又到了大家买各种产品的日子了。很多人都会选择在五一期间购买心仪的产品,当然谈到节日,手机圈无疑又是最火的,今年以来,国产手机厂商也是非常卖力,各家都发布了不少的手机,
大数据入门Storm基础讲解在大数据学习当中,主流的技术框架通常都是需要有相应程度的掌握的,包括HadoopSparkStormFlink等。其中,Storm这个框架,其实处在一个稍微尴尬的地位,市场占有率称
大数据入门Zookeeper分布式协调服务大数据技术生态的各个组件,不少都是带着动物Logo的,什么大象(Hadoop)蜜蜂(Hive)松鼠(Flink),因此也就有了Hadoop动物园的说法,而要管理好各个组件,自然也就
大数据学习SparkSQL入门简介在大数据学习当中,Spark框架所占的比重,还是非常高的。Hadoop和Spark基本上是大数据开发学习当中的重点内容,而Spark随着市场地位的不断提升,在学习阶段也得到更多的重