session | 您所在的位置:网站首页 › 微信的使用方法说明文 › session |
会话密钥session_key有效性 开发者如果遇到因为session_key不正确而校验签名失败或解密失败,请关注下面几个与session_key有关的注意事项。 wx.login()调用时,用户的session_key会被更新而致使旧session_key失效。开发者应该在明确需要重新登录时才调用wx.login(),及时通过登录凭证校验接口更新服务器存储的session_key。 微信不会把session_key的有效期告知开发者。我们会根据用户使用小程序的行为对session_key进行续期。用户越频繁使用小程序,session_key有效期越长。 根据文档知道,每次wx:login()之后都会更新session-key,又有: wx.checkSession({ success: function(){ //session_key 未过期,并且在本生命周期一直有效
wx:DecryptParentInfo(......); //解密用户信息 }, fail: function(){ // session_key 已经失效,需要重新执行登录流程 wx.login() //重新登录 .... } })现在想知道的是,界面用户信息时,需要用到session_key去解密iv、encryptedData,对此,同一小程序不同的用户都用session_key去解密iv、encryptedData时,每一个用户的session_key是否一致,说白了就是解密时,这个session_key是否所有用户都是共用的。。?????还是说每一个用户解密时,都是不同的session_key(各自用各自的session_key)?????? 因为,出现了两个问题: 1)如果共用session_key的话,是否会出现一个问题:一个用户wx:checkSession()时没有过期,再去解密用户信息,而另一个用户刚好在解密之前再去登录刷新了session_key,此时session_key已改变,此时第一个用户解密将会失败,导致无法解密。。。。 2)如果不共用session_key的话,wx:checkSession()没过期后再用session_key在后台执行解密方法,大部分都是解密成功,偶尔出现了解密失败的情况,请问一下此时是什么问题导致的解密失败的。。。。。??????因为,发现一个问题就是并发去登录时,将会频繁出现解密用户信息失败,求大神帮忙感激不尽。。。。。。。。。。。。。。 最后想明确两个问题: 1)session_key是否解密时共用的(同一个session_key去解密不同的用户信息)? 2)解密失败的根本原因???????? |
CopyRight 2018-2019 实验室设备网 版权所有 |