【发布时间】:2012-07-25 15:19:48
【问题描述】:
我正在使用 Jersey 发送这样的 HTTP POST 请求:
MultivaluedMap<String, String> form = new MultivaluedMapImpl();
form.add("body", "Here there is my text");
ClientResponse response = resource.queryParams(form).type(MediaType.APPLICATION_FORM_URLENCODED).post(ClientResponse.class);
当我放入body元素时,其长度为7999或更短的文本 - 对方的响应还可以
但是,如果我尝试使用超过 8000 的文本长度,另一方的响应是:
返回 400 Bad Request 的响应状态
我尝试在命令行中从 CURL 提交相同的调用,它通过了。
响应状态为400
可能是 Jersey/Tomcat 配置中的某些东西吗?
我尝试添加到 tomcat 连接器 maxHttpHeaderSize="65536" 但没有帮助
【问题讨论】:
-
Curl 调用顺利通过,因为您可能没有在 curl 请求中包含所有 HTTP 标头。如果你这样做了,你很可能也会收到 400 响应。
标签: java http tomcat jersey tomcat7