我有一个使用 Spring Boot 和 Spring Security 的项目。Spring Security 使用每个请求的会话 ID 验证标头。如果会话 ID 无效或过期,将返回错误代码 401。会话 ID 在到达控制器之前经过验证。
现在,我面临一个问题,如果用户输入无效的 URL 而没有有效的会话 ID,响应代码仍然是 401,因为会话 ID 首先经过验证。我的期望是,如果 URL 无效,将返回错误代码 404(未找到 HTTP 请求的映射)。换句话说,我想在验证会话 ID 之前验证 URL。
有什么办法可以做到这一点,因为标头中的会话 ID 在到达控制器之前已在 GenericFilterBean 中进行了验证?
任何帮助表示赞赏。谢谢。
java spring http-status-code-404 http-status-code-401 spring-boot