解决 postman测试接口报404 Not Found

JDK版本:jdk17

IDEA版本:IntelliJ IDEA 2022.1.3


文章目录


问题描述

当我使用postman测试接口时,报了 404 Not Found 的错误,报错截图如下所示

但我的后端程序中已经定义了该接口,如下所示

但postman始终无法找到这个接口!!!


原因分析

我百度了很久,一般来说,404错误基本上是接口路径,提交方式、参数类型、返回结果类型有误所致

然而我仔细核对了上述因素,均属正确!!!

这就非常奇怪了? 后来我突发奇想,找不到资源,也许不一定是上面的原因,很有可能存在多个重复的请求路径。

因为我的demo项目中使用了Spring Security框架,Spring Security框架默认使用 /logout该请求路径用于处理用户的登出操作。当用户请求/logout时,Spring Security会执行登出流程,这通常包括清除用户的认证信息、重定向到登出成功页面或登出后的URL!!!

源码如下

官方解释如下

Constructor which takes a LogoutSuccessHandler instance to determine the target destination after logging out. The list of LogoutHandlers are intended to perform the actual logout functionality (such as clearing the security context, invalidating the session, etc.).

翻译

构造函数,它在注销后使用LogoutSuccessHandler实例来确定目标目标。LogoutHandlers列表用于执行实际的注销功能(如清除安全上下文、使会话无效等)


解决方案

将自定义的请求路径/logout 重命名即可

重新测试如下

排错成功!!!


相关推荐
日月云棠5 小时前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840826 小时前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide7 小时前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家7 小时前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺7 小时前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602737 小时前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端
桦说编程8 小时前
实战分析 ConcurrentHashMap.computeIfAbsent 的锁冲突问题
java·后端·性能优化
大道至简Edward12 小时前
Spring Boot 2.7 + JDK 8 升级到 Spring Boot 3.x + JDK 17 完整指南
spring boot·后端
程序员清风12 小时前
用了三年AI,我总结出高效使用AI的3个习惯!
java·后端·面试
beata13 小时前
Java基础-13: Java反射机制详解:原理、使用与实战示例
java·后端