开发者社区 问答 正文

服务端如何检测session_key是否有效?

服务端如何检测session_key是否有效?

展开
收起
gxx1 2022-04-01 01:32:45 1292 分享 版权
2 条回答
写回答
取消 提交回答
  • 33

    2022-04-01 08:41:41
    赞同 展开评论
  • 1.wx.login()调用时,用户的session_key会被更新而致使旧session_key失效。开发者应该在明确需要重新登录时才调用wx.login(),及时通过登录凭证校验接口更新服务器存储的session_key。

    2.微信不会把session_key的有效期告知开发者。我们会根据用户使用小程序的行为对session_key进行续期。用户越频繁使用小程序,session_key有效期越长。

    3.开发者在session_key失效时,可以通过重新执行登录流程获取有效的session_key。使用接口wx.checkSession()可以校验session_key是否有效,从而避免小程序反复执行登录流程。

    4.当开发者在实现自定义登录态时,可以考虑以session_key有效期作为自身登录态有效期,也可以实现自定义的时效性策略。

    使用官方的session_key作为登陆状态有效期可以很好的统一前后端登陆状态,但仅仅前端有checkSession接口而后端没有相关api,即后端无能力验证session_key的有效性。
    
    2022-04-01 09:18:00
    赞同 展开评论
问答地址: