3rdsession怎么生成的啊?
发布于 7 年前 作者 xia21 12072 次浏览 来自 官方Issues

我知道是用openid和sessionkey生成,问题是怎么生成的啊?把openid和sessionkey加起来用加密算法加密,使用的时候再解密吗?

3 回复

3rd_session 随便你自己生成,只要保证随机且唯一就 ok,然后跟 {openid, sessionkey} 建立一个对应关系,可以根据用户请求中带过来的 3rd_session 找到对应的 {openid, sessionkey}, 因为后面跟微信的服务器交互要用到这两个东西

在服务端请求接口得到sessionkey后,假设用户信息为userInfo,

以MD5为例,

3rdsession = MD5('md5内容') // 'md5内容' 可以使用openid+sessionkey

3rdsession为key缓存{openid,sessionkey,userInfo}内容,缓存一定的时间

3rdsession回传给小程序

小程序请求服务器时候,就带上这个3rdsession,服务端根据请求中的3rdsession获取缓存,有数据且未过期就说明是登录状态,没数据或已过期,说明需要重新重新登录

回到顶部