Clojure 解放者:设置:表示:媒体类型在:媒体类型可用吗?

Clojure 解放者:设置:表示:媒体类型在:媒体类型可用吗?,clojure,liberator,Clojure,Liberator,我想使用决策点:媒体类型可用?,但我失败了 我知道我必须设置:表示:媒体类型,但我真的不知道如何设置 到目前为止,我的代码如下所示: (defresource test-resource [] :media-type-available (fn [req] (assoc req :representation {:media-type "application/json"})) :available-media-types ["application/json" "text/ht

我想使用决策点
:媒体类型可用?
,但我失败了

我知道我必须设置
:表示:媒体类型
,但我真的不知道如何设置

到目前为止,我的代码如下所示:

(defresource test-resource []
  :media-type-available (fn [req]
    (assoc req :representation {:media-type "application/json"}))
  :available-media-types ["application/json" "text/html"]
  :handle-ok (fn [req] {:ok true})
)
备注:

  • (assoc-req:representation{:media-type“application/json”})
    使用“changed”
    req
    对象生成正确的映射
  • :handle ok
    req
    对象中,
    :representation
    值为
    {}
  • 我不知道如何设置它(它不是一个可变对象,是吗?),而查看解放者的源代码并没有真正的帮助

    谢谢,
    卡罗尔

    好的。。。这只是一个打字错误。。。而不是
    :representation
    我有
    :representation

    因此,如果有人对此感兴趣,有两种解决方法:

  • 返回带有合并的
    :表示法的
    请求
    对象:

    :media-type-available (fn [req]
      (assoc req :representation {:media-type "application/json"}))
    
  • 仅返回
    :表示法
    对象:

    :media-type-available (fn [req]
      {:representation {:media-type "application/json"}})