后端token校验流程

获取用户信息

前端中只有 await userStore.getInfo() 表示从后端获取数据

在页面中找到info对应的url地址,在IDEA中查找

这里是getInfo函数的声明,我们要找到这个函数的使用,所以点getInfo()

java 复制代码
@Override
public JSONObject getInfo() {
    JSONObject result = new JSONObject(); // 创建一个空的 JSONObject,用于存储返回结果
    LambdaQueryWrapper<User> wrapper = Wrappers.lambdaQuery(); // 创建 LambdaQueryWrapper 对象,用于构建查询条件
    wrapper.eq(User::getId, BaseContextHandler.getUserId()); // 设置查询条件:id 等于当前用户的 id
    User dbUser = baseMapper.selectOne(wrapper); // 执行查询,获取用户信息
    if (null != dbUser) { // 如果查询结果不为空
        JSONObject data = new JSONObject(); // 创建一个新的 JSONObject,用于存储用户数据
        data.put("roles", Collections.singletonList(dbUser.getRoles())); // 将用户角色放入 data 中
        data.put("account", dbUser.getAccount()); // 将用户账号放入 data 中
        result.put("data", data); // 将 data 放入返回结果中
        result.put("status", 200); // 设置状态码为 200(表示成功)
        return result; // 返回结果
    }
    result.put("status", 500); // 如果查询结果为空,设置状态码为 500(表示失败)
    return result; // 返回结果
}

其中data.put("roles", Collections.singletonList(dbUser.getRoles()));data.put("account", dbUser.getAccount());表示获取用户账号和角色信息

token

当我们在登录时,在preview中可以看到数据中有token和userId,那么同理可以找到 login 函数

当我们访问时会被拦截

将提示信息进行全局搜索,此处AUTH_FAIL是一个自定义的用来表示错误信息的常量,全局搜索这个常量,就可以找到进行校验Token的地方

相关推荐
龙虾PRO1 小时前
能源与股票量化核心差异,AI全链路落地实操手册
java·面试·职场和发展
llwszx1 小时前
【Java/Go后端手撸原生Agent(第九篇):Plan-and-Execute规划模式——从“走一步看一步“到“先谋后动“】
java·python·golang·agent开发·plan模式·规划执行模式
ZJH__GO1 小时前
网络编程v2--多客户端互通
java·运维·服务器·开发语言·计算机网络
霸道流氓气质2 小时前
SpringBoot中基于 AES-GCM + KMS 密钥管理的数据加解密 Starter 实践
java·数据库·spring boot
Gofarlic_OMS2 小时前
NX浮动许可调度黑名单机制,对比两款谁更合理
java·大数据·运维·开源·制造
乐观的Terry2 小时前
8、发布系统-完整流水线的核心
java·spring boot·spring·spring cloud
Alexalbb2 小时前
从角色过滤到可审计授权:单体系统数据权限设计复盘与演进
java
万亿少女的梦1683 小时前
基于Spring Boot的游戏交易管理系统设计与实现
java·spring boot·mysql·系统设计·交易管理
闲猫3 小时前
Agent工程实践:从WorkFlow到多Agent协作的落地笔记
java·服务器·前端
笨蛋不要掉眼泪3 小时前
Java虚拟机:常用参数
java·开发语言·python