springboot项目结合shiro与redis的工作流程,若能加上vue讲解,万分感激,求告知,大白话即可,跪拜😊
2条回答 默认 最新
- 会飞的石头。 2023-07-11 23:27关注
当Spring Boot结合Shiro和Redis时,工作流程可以分为以下几个步骤:
用户登录:用户在前端页面输入用户名和密码,并发送登录请求到后端Spring Boot应用。后端应用验证用户凭证,例如用户名和密码,如果验证通过,生成一个唯一的Session ID,并将该Session ID存储在Redis中。同时,将Session ID返回给前端。
设置Cookie:后端将生成的Session ID设置为Cookie,并在响应中返回给前端。前端收到Cookie后,将该Cookie保存起来。
请求授权:当用户在前端页面访问受保护的资源时(如需要登录才能访问的页面),前端会将保存的Cookie随请求一起发送给后端。后端应用从Cookie中读取Session ID,并在Redis中查找对应的信息。如果找到了相关的信息,表明用户已经登录过,并且有访问授权。
鉴权过程:后端将从Redis中获取的用户信息与访问资源的权限要求进行比对。如果该用户具备访问权限,后端会返回请求的资源数据给前端。否则,会返回相应的错误或重定向到登录页面。
会话管理:如果用户执行了注销操作或会话超时,前端会发送一个注销请求到后端。后端将根据请求中的Session ID,从Redis中删除相应的用户信息,以及清除前端保存的Cookie。
前端交互:前端根据后端返回的数据和状态,展示相应的界面和功能。例如,如果用户没有登录或没有相应的权限,页面可能会显示“未登录”或“无权限”的提示信息。
总结起来,整个流程大致是:用户登录时,通过Shiro验证用户信息并生成Session ID,并将Session ID存储在Redis中。后续的请求会带上Cookie,后端根据Cookie中的Session ID验证用户登录状态和授权情况。前端根据后端返回的数据和状态,在页面上展示相应的内容。
以上是一个简单的流程描述,实际的流程可能还会涉及到更多的细节和安全措施。同时,前端的工作可能还包括用户交互和页面跳转等,具体实现方式取决于你使用的前端技术(如Vue)和UI库。希望这样的回答能够帮到你。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 思科模拟器Router c3600 NM-4E
- ¥15 岛津txt格式文件转nirs格式
- ¥15 石墨烯磁表面等离子体
- ¥15 angular 项目无法启动
- ¥15 安装wampserver,图标绿色,但是无法进入软件
- ¥15 C++ MFC 标准库 加密解密解惑
- ¥15 两条数据合并成一条数据
- ¥15 Ubuntu虚拟机设置
- ¥15 comsol三维模型中磁场为什么没有“速度(洛伦兹项)”这一选项
- ¥15 electron 如何实现自定义安装界面