2012-02-14 19 views
4

使用環的Jetty適配器,如果我的請求太大,我得到413:全頭錯​​誤。我追蹤到一個名爲headerbuffersize的屬性,但是當我嘗試在run-jetty調用中設置它時,我仍然得到了413。有沒有更好的方式來控制Ring的jetty配置?Clojure /戒指:使用戒指碼頭適配器,大的請求給我一個413:全頭錯​​誤。

(ring/run-jetty 
(var app) 
{:port port :join? false 
    :headerbuffersize 1048576}) 

什麼是正確的方法來做到這一點?

謝謝!

回答

7

我認爲這應該工作:

(def header-buffer-size 1048576) 

(def config 
    {:host "example.com" 
    :port 8080 
    ; join? false ; and any other options... 
    :configurator (fn [jetty] 
        (doseq [connector (.getConnectors jetty)] 
        (.setHeaderBufferSize connector 
              header-buffer-size))) 
    }) 
+0

這肯定不正常工作!我現在看到,通過參考碼頭,我們可以做任何我們需要的配置。謝謝! – prismofeverything 2012-02-15 04:58:12

+0

有人說在最近的jetty版本中,你應該使用'setRequestHeaderSize'而不是'setHeaderBufferSize'。如果是這種情況,請隨意將此信息作爲附錄。 – stealthjong 2014-08-01 10:18:03