如何解决前端检查会话应如何进行?
我正在开发网站的用户会话管理。流量:
- 会话不存在/无效,前端将用户引导至登录页面
- 用户登录
- 后端在其数据库中创建会话
- 后端创建会话ID cookie
- 前端在每次身份验证请求中传递会话ID cookie
我的问题:前端将如何知道会话是否不存在/无效?当用户更改密码时,需要处理这种情况,然后所有设备间的会话都将被撤消。因此,前端需要以某种方式检查后端。
可能的方法:
-
后端提供了一个GET / session API,用于告知会话是否处于活动状态。前端在每个请求之前调用它,如果会话处于非活动状态,则重定向到登录名。但这似乎有很多额外的要求。
-
前端在每次浏览器加载网站(CTRL-R)时调用GET / session。如果会话在经过身份验证的页面上无效,则该页面将在重新加载后才能工作,然后重新登录。如果未认证和已认证的页面完全分开,这可能就足够了。
如果会话处于非活动状态,则 -
后端API返回HTTP 401。当前端看到该消息时,它将指示用户登录。这比#2更实时,并且不需要额外的GET / session请求。我不知道这是否有我看不到的问题。
哪种方法最好?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。