最近在POST json數據時,Jetty(9.3.6.v20151106)服務端程序會報題中錯誤。
經一番搜索,解決如下:
- 這不是因為表單大小限制出錯,表單大小不止這個數目。
- 這是由于request header大小超限。該參數可以在jetty.xml文件中設置:
<New id="httpConfig" class="org.eclipse.jetty.server.HttpConfiguration">
...
<Set name="requestHeaderSize"><Property name="jetty.httpConfig.requestHeaderSize" deprecated="jetty.request.header.size" default="81920"/></Set>
...
</New>
- 如果實在有必要,才修改以上參數。因為:
- 默認限制是考慮到網絡上各種網關,proxy的限制,如果改得太大,jetty端沒問題,但是可能帶來鏈路中其它環節的問題。
- 可以通過修改POST json數據的設計來減少在request header中填入的數據量。