【问题标题】:Meecrowave - setting relaxedQueryChars in Tomcat 9 embeddedMeecrowave - 在嵌入的 Tomcat 9 中设置 RelaxQueryChars
【发布时间】:2021-01-03 00:43:28
【问题描述】:

我无法处理查询字符串参数值中带有大括号的请求。

我尝试设置tomcat.util.http.parser.HttpParser.requestTargetAllow 属性,但似乎不再受支持。在我的例子中,Meecrowave 嵌入了 Apache Tomcat 9.x。

Meecrowave.Builder builder = new Meecrowave.Builder();
builder.setScanningPackageIncludes("my.packages");

try (Meecrowave meecrowave = new Meecrowave(builder)) {
    meecrowave.bake().await();
}

【问题讨论】:

    标签: java tomcat tomcat9


    【解决方案1】:

    我终于找到了这个似乎运作良好的解决方案

    final Meecrowave bake = meecrowave.bake();
    bake.getTomcat().getConnector().setProperty("relaxedQueryChars", "|{}");
    bake.await();
    

    【讨论】:

      【解决方案2】:

      有可能 - 作为任何连接器属性 - 通过配置属性将其作为“connector.attributes.relaxedQueryChars”传递:

      try (final Meecrowave meecrowave = new Meecrowave(new Meecrowave.Builder()
               .property("connector.attributes.relaxedQueryChars", "|{}"))
          .bake()) {
          // anything
      }
      

      【讨论】:

        猜你喜欢
        • 2019-03-07
        • 1970-01-01
        • 2019-01-19
        • 2019-01-13
        • 2018-02-22
        • 1970-01-01
        • 1970-01-01
        • 2019-06-14
        • 2021-11-02
        相关资源
        最近更新 更多