2017-08-09 130 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