ORDS 20.4 不再允许使用 [] 作为参数名称的一部分

问题描述

我一直在使用 [] 后缀将参数标记为对数组多次使用,但在 ORDS 20.4 中似乎不再允许这样做。

在 ORDS 20.3 中使用“https://host/ords/service/procedure?a[]=1”这样的 URL 完全没问题,但在 ORDS 20.4 中这会产生以下错误

java.lang.IllegalArgumentException:在请求目标中发现无效字符。有效字符在 RFC 7230 和 RFC 3986 中定义 org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:467) org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:294) org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:834) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415) org.apache.tomcat.util.net.socketProcessorBase.run(SocketProcessorBase.java:49) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.lang.Thread.run(Thread.java:748) 我在 Tomcat 中使用 ORDS,新的错误消息似乎可以通过在 ORDS 20.3 和 20.4 之间切换来打开和关闭

我在 20.4 的发布日志中没有找到任何有关此更改的文档,我想知道这是未记录的“功能”还是回归?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)