首页 > 其他分享 >两种登陆检查的思考

两种登陆检查的思考

时间:2024-02-28 16:13:33浏览次数:24  
标签:isExpiration return 检查 token Result 思考 null jwtHelper 登陆

第一种:

@GetMapping("checkLogin")
public Result checkLogin(@RequestHeader String token){
if (StringUtils.isEmpty(token)|| jwtHelper.isExpiration(token)){
return Result.build(null, ResultCodeEnum.NOTLOGIN);
}
return Result.ok(null);
} 第二种: @GetMapping("checkLogin")
public Result checkLogin(@RequestHeader String token){ boolean expiration= jwtHelper.isExpiration(token); 
if(expiration){ return Result.build(null,ResultCodeEnum.NOTLOGIN); }
return Result.ok(null);
}

从功能上来说,这两种方式并没有区别,它们都是用来检查用户登录状态的,在 token 为空或过期时返回 NOTLOGIN 错误码,否则返回 OK 状态码。

然而,从代码实现的角度来看,这两种方式有一些区别:

  1. 在第一种方式中,直接在 if 语句中使用了 StringUtils.isEmpty(token)|| jwtHelper.isExpiration(token) 来判断 token 是否为空或过期,然后返回对应的 Result 对象。
  2. 而在第二种方式中,先将 jwtHelper.isExpiration(token) 的结果保存在一个名为 expiration 的变量中,然后再根据 expiration 的值来返回对应的 Result 对象。

总体来说,这两种方式的核心逻辑是相同的,只是在具体的代码实现上稍有不同。通常来说,选择哪种方式取决于个人或团队的编程风格和习惯,以及代码的可读性和维护性。

标签:isExpiration,return,检查,token,Result,思考,null,jwtHelper,登陆
From: https://www.cnblogs.com/zhanshuang/p/18037771

相关文章

  • 第十二章 让计算机“思考” 笔记
    计算机并不能像人类一样有意识地思考。然而,通过程序员编写的代码,计算机可以执行各种复杂的操作和决策,这看起来像是“思考”。作者首先介绍了计算机逻辑,这是计算机处理信息和做出决策的基础。计算机逻辑包括布尔逻辑、比较逻辑和逻辑门等,它们用于描述和处理二进制数据的关系和运算......
  • 由select for update锁等待问题引发的深入思考
    关于MySQL的加锁机制,其实十分复杂,不同的隔离级别,是否是主键或索引,锁的粒度等等。很多工作了很多年的MySQLDBA也不能把各种加锁场景一一讲清楚。有时候一个简单的锁等待场景都值得深入研究,大家更多的是知其然而不知其所以然。本文介绍的是一个很常见的锁等待问题,但很少有人知道其......
  • 让计算机“思考”
    控制就是指CPU和各种设备之间配合进行数据的输入输出处理。程序的使用目的大体可以划分为两类。一类是大家作为工具来使用的程序。例如,文字处理器这个程序,大家是将其作为文档处理的工具来使用的。虽然用笔及尺子等也可以作成文档,不过用文字处理器会更有效率。这种情况可以说是程......
  • 让计算机“思考”
    程序的使用目的大体可以划分为两类:一类,是大家作为工具来使用的程序。例如,文字处理器这个程序,大家是将其作为文档处理的工具来使用的。这种情况可以说是程序替代了现有的工具(笔和尺子)。另外一个使用目的是用程序来代替执行人类的思考过程。例如,微计算机控制的电饭煲,会根据米和水......
  • 【进阶篇】使用 Redis 实现分布式缓存的全过程思考(一)
    目录前言一、关于缓存二、基本数据结构三、缓存注解3.1自定义注解3.2定义切点(拦截器)3.3AOP实现3.4使用示例四、数据一致性4.1缓存更新策略4.2缓存读写过程五、高可用5.1缓存穿透5.2缓存击穿5.3缓存雪崩5.4Redis集群六、文章小结前言写在前面,让我们从3个问题开始今天的文章:......
  • 关于dfs序求lca的一点思考
    最近学了一点黑科技,这就是一个。有一个结论比如这就是一个dfn序。在代码中,常常对beg和ed都开一个数组。如果一个点是x,y的lca记为g,那么有以下结论\(beg[g]<min(beg[x],beg[y]),ed[g]>max(ed[x],ed[y])\)感性理解即可。所以我们就可以在符合的点找深度最大的。这是一种思路,常常......
  • 让计算机思考
    程序就如同是由计算机执行的各种指令罗列起来的文章。计算机内部的CPU,通过对该文章的内容进行解析和运行,来控制连接到计算机的各种外围设备。具体来说,控制就是指CPU和各种设备之间配合进行数据的输入输出处理。关于程序的运行原理,在前面章节中我们已经从各方面进行了说明。那么,如......
  • 让计算机思考
    程序就如同是由计算机执行的各种指令罗列起来的文章。计算机内部的CPU,通过对文章的内容进行解析运行,控制连接到计算机的各种外围设备。控制:指CPU和各种设备之间配合进行数据的输入输出处理。程序的使用目的有两类,一类是大家作为工具使用的程序,一类是用程序代替执行人类的思考过......
  • 第12章让计算机思考的程序实现方式
    程序的使用目的:大致可以划分为作为工具与代替执行人类思考两类1工具类:如文字处理器,excel等程序主要用于作为工具提升工作效率2代替人类思考类:如微计算机控制电饭煲,根据米和水的分量自动调节火的大小与加热时间常见用程序表示人类的思考方式:1随机性,用于模仿人思考的随意性,没有......
  • PropTypes 是 React 提供的一个用于类型检查的库 若使用了ts,还需要使用PropTypes吗
    在使用了TypeScript的React项目中,由于TypeScript已经提供了静态类型检查的能力,通常不需要再额外使用prop-types库进行运行时的类型检查。TypeScript在编译阶段就能通过类型注解确保组件之间的props类型正确无误,这有助于在开发阶段就发现类型不匹配的问题。而prop-ty......