【发布时间】:2015-06-11 06:27:56
【问题描述】:
我们有一个 servlet 并向其发送 post-message。在networktraffic中,我们可以看到参数是完整的。在 java servlet 中调用 request.getParameter(paramname) 函数时,我们得到的值在特殊数量的字符后被截断,而不是特定字符。因此,当向“somewordthatislong”添加一些字符时,参数在日期内被截断的位置向左移动。
有人知道为什么会这样吗?
来自网络的参数发布消息
q=somewordthatislong+AND+document_meta_documentarchive_publicationsdatum_manipulated%3A%5B2014%2F01%2F01+TO+2015%2F12%2F31%5D
调用request.getParameter(paramname)函数
q=somewordthatislong
+AND+document_meta_documentarchive_publicationsdatum_manipulated%3A%5B2014%2F01%2F01+TO+2
参数的 URL 解码值为
q=somewordthatislong AND document_meta_documentarchive_publicationsdatum_manipulated:[2014/01/01 TO 2015/12/31]
【问题讨论】:
-
你在哪里从网络捕获参数:在客户端还是服务器端?
-
这是浏览器网络标签显示的内容。
-
你的意思是“多长时间”?在 tomcat 中有一个“maxPostSize”配置(在连接器中),但通常它非常大。我会检查是否有人根据您的尺寸调整了此配置。或者您的帖子是否因其他一些领域而很大。
-
这是我所期望的。在服务器的机器上运行 wireshark 并尝试捕获网络。我猜你会在那里看到截断的版本。