解决 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 重命名即可

重新测试如下

排错成功!!!


相关推荐
浮生若梦l几秒前
docker部署springboot项目记录
spring boot·docker·容器
芒克芒克5 分钟前
JVM性能监控
java·jvm
行稳方能走远7 分钟前
Android java 学习笔记3
android·java
WF_YL8 分钟前
IntelliJ IDEA 关闭保存时在文件末尾换行 -(取消保存自动末尾换行)
java·ide·intellij-idea
撩得Android一次心动11 分钟前
Android Lifecycle 全面解析:掌握生命周期管理的艺术(1)
android·java·kotlin·lifecycle
一路向北⁢11 分钟前
社交平台私信发送、已读状态同步与历史消息缓存系统设计文档(SpringBoot + RabbitMQ + Redis + MySQL)
spring boot·rabbitmq·java-rabbitmq·异步消息
lang2015092811 分钟前
Java高性能缓存库Caffeine全解析
java·缓存·linq
食咗未12 分钟前
Linux SSH工具的使用
linux·网络·测试工具·ssh·远程登陆
专注于大数据技术栈12 分钟前
java学习--什么是线程安全和不安全
java·学习·安全