1

我想使用一个决策点:media-type-available?,但我失败了......

我知道我必须设置,:representation :media-type但我真的不知道该怎么做。

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

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

评论:

  1. (assoc req :representation {:media-type "application/json"})生成带有“已更改”req对象的正确地图。
  2. :handle-okreq对象中,:representation值为{}

我不知道如何设置它(它不是一个可变对象,是吗?)并且查看解放者的源代码并没有真正帮助......

谢谢,卡罗尔

4

1 回答 1

0

好的...这只是一个错字...而不是:representation:represenation...

所以如果有人感兴趣,有两种方法可以解决这个问题:

  1. 返回req合并的对象:representation

    :media-type-available (fn [req]
      (assoc req :representation {:media-type "application/json"}))
    
  2. 只返回:representation对象:

    :media-type-available (fn [req]
      {:representation {:media-type "application/json"}})
    
于 2015-04-16T08:04:04.733 回答