You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

携带name参数的POST请求访问URI返回403,禁用JWT认证后仍被拦截

问题排查方案

  • 确认TABLES_URL常量匹配规则
    你的请求路径为/api/v1/VILLA+ITALIA/table,如果TABLES_URL没有按照Ant路径规则配置对应通配符(正确配置示例:/api/v1/*/table、/api/v1/**/table),该请求无法匹配到你配置的POST方法permitAll规则,会命中后续的anyRequest().authenticated()校验,直接返回403。
  • 检查CSRF校验逻辑
    你当前仅配置了API_URL_PREFIX、H2_URL_PREFIX两个路径前缀忽略CSRF校验,如果/api/v1/VILLA+ITALIA/table不在API_URL_PREFIX的覆盖范围内,POST请求未携带CSRF token就会触发403。可临时完全禁用CSRF测试:将代码中.csrf().ignoringAntMatchers(API_URL_PREFIX, H2_URL_PREFIX)替换为.csrf().disable(),验证请求是否正常。
  • 替换路径匹配器
    将antMatchers替换为mvcMatchers,Spring MVC原生的路径匹配规则会自动处理路径斜杠、路径变量编码(比如你路径中的+号转义)等特殊场景,匹配准确率更高。
  • 开启调试日志定位根因
    在项目配置文件中添加Security调试日志配置:
logging.level.org.springframework.security=DEBUG

重新发起请求后查看日志输出的拦截规则匹配过程、具体拒绝原因,可直接定位问题。

内容的提问来源于stack exchange,提问作者Manuel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 21:06:01