本文介绍了Clojure / Ring:使用环形跳码适配器,大的请求给我一个413:FULL HEAD错误。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用Ring的Jetty适配器,如果我的请求太大,我得到一个413:FULL HEAD错误。我跟踪到一个名为headerbuffersize的属性,但是当我尝试设置它在run-jetty调用,我仍然得到413的。是否有更好的方法来控制Ring的配置?

Using Ring's Jetty adapter, if my request is too large I get a 413: FULL HEAD error. I tracked it down to a property called headerbuffersize, but when I try to set it in the run-jetty call, I still get the 413's. Is there a better way to control jetty config from Ring?

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

什么是正确的方法这样做?

What is the right way to do this?

谢谢!

推荐答案

p>

I think this should work:

(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)))
   })

这篇关于Clojure / Ring:使用环形跳码适配器,大的请求给我一个413:FULL HEAD错误。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-19 16:43