关于SpringBoot 请求参数包含 [] 特殊符号 返回400状态

本文介绍在SpringBoot 2.1.2版本中,如何解决使用@PostMapping注解接收带有特殊字符[]的请求参数时出现的400错误。通过自定义Tomcat配置,修改内置Tomcat容器的relaxedQueryChars属性,实现对特殊字符的支持。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

springBoot 版本 2.1.2.RELEASE

@PostMapping("")
public Object method(String string){  
    return new Object();
}

当参数含有特殊符号 []  报错400

解决方案类似springMvc修改tomcat配置

springBoot 启动类 添加 bean

@Bean
public TomcatServletWebServerFactory tomcatServletWebServerFactory (){

   // 修改内置的 tomcat 容器配置
   TomcatServletWebServerFactory tomcatServlet = new TomcatServletWebServerFactory();
   tomcatServlet .addConnectorCustomizers(
      (TomcatConnectorCustomizer) connector -> connector.setProperty("relaxedQueryChars", "[]{}")
   );

   return tomcatServlet ;
}

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值