清风拂梦~ 2023-07-11 22:57 采纳率: 100%
浏览 8
已结题

springboot+shiro+redis的工作流程

springboot项目结合shiro与redis的工作流程,若能加上vue讲解,万分感激,求告知,大白话即可,跪拜😊

  • 写回答

2条回答 默认 最新

  • 会飞的石头。 2023-07-11 23:27
    关注

    当Spring Boot结合Shiro和Redis时,工作流程可以分为以下几个步骤:

    1. 用户登录:用户在前端页面输入用户名和密码,并发送登录请求到后端Spring Boot应用。后端应用验证用户凭证,例如用户名和密码,如果验证通过,生成一个唯一的Session ID,并将该Session ID存储在Redis中。同时,将Session ID返回给前端。

    2. 设置Cookie:后端将生成的Session ID设置为Cookie,并在响应中返回给前端。前端收到Cookie后,将该Cookie保存起来。

    3. 请求授权:当用户在前端页面访问受保护的资源时(如需要登录才能访问的页面),前端会将保存的Cookie随请求一起发送给后端。后端应用从Cookie中读取Session ID,并在Redis中查找对应的信息。如果找到了相关的信息,表明用户已经登录过,并且有访问授权。

    4. 鉴权过程:后端将从Redis中获取的用户信息与访问资源的权限要求进行比对。如果该用户具备访问权限,后端会返回请求的资源数据给前端。否则,会返回相应的错误或重定向到登录页面。

    5. 会话管理:如果用户执行了注销操作或会话超时,前端会发送一个注销请求到后端。后端将根据请求中的Session ID,从Redis中删除相应的用户信息,以及清除前端保存的Cookie。

    6. 前端交互:前端根据后端返回的数据和状态,展示相应的界面和功能。例如,如果用户没有登录或没有相应的权限,页面可能会显示“未登录”或“无权限”的提示信息。

    总结起来,整个流程大致是:用户登录时,通过Shiro验证用户信息并生成Session ID,并将Session ID存储在Redis中。后续的请求会带上Cookie,后端根据Cookie中的Session ID验证用户登录状态和授权情况。前端根据后端返回的数据和状态,在页面上展示相应的内容。

    以上是一个简单的流程描述,实际的流程可能还会涉及到更多的细节和安全措施。同时,前端的工作可能还包括用户交互和页面跳转等,具体实现方式取决于你使用的前端技术(如Vue)和UI库。希望这样的回答能够帮到你。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月20日
  • 已采纳回答 7月12日
  • 创建了问题 7月11日

悬赏问题

  • ¥15 思科模拟器Router c3600 NM-4E
  • ¥15 岛津txt格式文件转nirs格式
  • ¥15 石墨烯磁表面等离子体
  • ¥15 angular 项目无法启动
  • ¥15 安装wampserver,图标绿色,但是无法进入软件
  • ¥15 C++ MFC 标准库 加密解密解惑
  • ¥15 两条数据合并成一条数据
  • ¥15 Ubuntu虚拟机设置
  • ¥15 comsol三维模型中磁场为什么没有“速度(洛伦兹项)”这一选项
  • ¥15 electron 如何实现自定义安装界面