2017-08-09 95 views
0

Java服务器使用Apache CXF 3.1.10公开REST服务。尝试使用长度超过8K的URL调用GET服务时,该服务会提供错误。Rest服务请求(> 8KB)失败

REST服务器使用启动Jetty服务器的JAXRSServerFactoryBean。我无法找到允许服务器接受超过8K的请求的方法。

回答

0

获取请求在客户端和服务器端都有查询大小限制。 (检查这个细节:maximum length of HTTP GET request?

也许你应该转移到POST服务。或者,如果您同时控制客户端和服务器,则可以使用请求主体。 (GET请求允许,但有一些客户端/服务器不支持)

+0

感谢您的建议,但由于失败的服务是数据请求(https:// www .w3schools.com/TAGs/ref_httpmethods.asp) –

+0

其实这并不完全正确。预计GET请求会返回数据,所以不应该有任何副作用。但POST请求可能会更新数据。他们不是被迫这样做的。由于多种原因,POST可以用于数据检索,其中之一就是发送的数据太大而不适合URL字符串。 – xycf7