Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Clojure Compojure/Ring项目中获取“HttpInputOverHTTP”的内容?_Clojure - Fatal编程技术网

如何在Clojure Compojure/Ring项目中获取“HttpInputOverHTTP”的内容?

如何在Clojure Compojure/Ring项目中获取“HttpInputOverHTTP”的内容?,clojure,Clojure,如何获取传入的POSThttp请求的:body#object[org.eclipse.jetty.server.HttpInputOverHTTP 0x42c3599b”的内容HttpInputOverHTTP@42c3599b“]在Compojure/Ring项目中 我知道这个:body由一个名为data的部分组成,它的MIME类型是text-plain,另一个名为excel的部分MIME类型是application/excel Islurped了:body的内容,它显示: 您可以找到一个基本

如何获取传入的
POST
http请求的
:body#object[org.eclipse.jetty.server.HttpInputOverHTTP 0x42c3599b”的内容HttpInputOverHTTP@42c3599b“]
在Compojure/Ring项目中

我知道这个
:body
由一个名为
data
的部分组成,它的
MIME类型是
text-plain
,另一个名为
excel
的部分
MIME类型是
application/excel

I
slurp
ed了
:body
的内容,它显示:

您可以找到一个基本示例,我强烈推荐:

(ns ringtest
  (:require
    [ring.adapter.jetty :as jetty]
    clojure.pprint))

;; Echo (with pretty-print) the request received
(defn handler [request]
  {:status 200
   :headers {"content-type" "text/clojure"}
   :body (with-out-str (clojure.pprint/pprint request))})

(defn -main []
  ;; Run the server on port 3000
  (jetty/run-jetty handler {:port 3000}))

手动解析二进制流将很困难。按如下方式包装处理程序:

(包装多部分参数处理程序选项)

该中间件解析主体并用解析的数据填充
:params
参数


有关更多详细信息,请参阅文档。

这与此无关,无法解决问题。见公认的答案。