2

我正在尝试使用 clojure 中的环制作一个非常简单的 API。我正在使用 rack.middleware.format-params 中间件将输出转换为 json,并将输入从 json 转换为 clojure 数据结构。

我的输出运行良好,但我无法终生访问通过 json 发送的参数。这是一些适用于获取请求的代码,但我无法让 POST 请求返回它收到的 json

(ns testing.core
  (:use [compojure.core]
        [ring.middleware.format-params :only [wrap-json-params]]
        [ring.middleware.format-response :only [wrap-json-response]]
        [ring.adapter.jetty])
  (:require [compojure.handler :as handler]))

(defroutes app-routes
  (GET "/"
       []
       {:body {:hello "world"}})

  (POST "/"
        {params :params}
        {:body params}))

(def app
  (-> (handler/api app-routes)
      (wrap-json-params)
      (wrap-json-response)))

它只是返回这个:{}

我究竟做错了什么?

4

1 回答 1

6

我是个白痴,意识到我没有发送 json Content-Type 标头。希望没有其他人犯同样的愚蠢错误:P

于 2012-10-31T03:32:36.703 回答