编写注册接口与登录认证

编写注册接口

在UserController添加方法

java 复制代码
@PostMapping("/login")
    public Result login(@Pattern(regexp = "^\\S{5,16}$") String username,
                        @Pattern(regexp = "^\\S{5,16}$") String password){
//        根据用户名查询用户
        User loginUser = userService.findByUserName(username);

//        判断该用户是否存在
        if(loginUser==null){
            return Result.error("用户名错误");
        }
//        判断密码是否正确,loginUser中对应的password是密文
        if (Md5Util.getMD5String(password).equals(loginUser.getPassword())){
//            登录成功
            return Result.success("jwt令牌...");
        }
        return Result.error("密码错误");
    }

postman测试

输入错误密码后

登录认证

用户如果没有登录,不能访问其他接口,其他接口需要对登录认证进行检查。

编写一个文章接口,发现在没有登录的情况下依然可以看到文章列表

jwt令牌

令牌就是一段字符串。

功能

  • 承载业务数据,减少后续请求查找数据库的次数,从令牌里获取用户数据
  • 防篡改,保证信息的合法性和有效性
相关推荐
q***98521 小时前
VS Code 中如何运行Java SpringBoot的项目
java·开发语言·spring boot
allbs1 小时前
spring boot项目excel导出功能封装——3.图表导出
spring boot·后端·excel
wasp5201 小时前
Spring AI 代码分析(十)--Spring Boot集成
人工智能·spring boot·spring
unclecss1 小时前
把 Spring Boot 的启动时间从 3 秒打到 30 毫秒,内存砍掉 80%,让 Java 在 Serverless 时代横着走
java·jvm·spring boot·serverless·graalvm
Billow_lamb2 小时前
Spring Boot2.x.x 全局错误处理
java·spring boot·后端
雁于飞3 小时前
分布式基础
java·spring boot·分布式·spring·wpf·cloud native
bing_1583 小时前
Spring Boot 项目中判断集合(List、Set、Map)不能为空且不为 null的注解使用
spring boot·后端·list
Q_Q5110082855 小时前
python+django/flask的结合人脸识别和实名认证的校园论坛系统
spring boot·python·django·flask·node.js·php
Q_Q5110082855 小时前
python+django/flask的选课系统与课程评价整合系统
spring boot·python·django·flask·node.js·php
老华带你飞6 小时前
社区养老保障|智慧养老|基于springboot+小程序社区养老保障系统设计与实现(源码+数据库+文档)
java·数据库·vue.js·spring boot·小程序·毕设·社区养老保障