7

Clojure 的传输不支持开箱即用的 Joda 时间格式。如何添加对 的写支持org.joda.time.DateTime

4

2 回答 2

9

添加此功能:

(def joda-time-writer
  (transit/write-handler
   (constantly "m")
   #(-> % coerce/to-date .getTime)
   #(-> % coerce/to-date .getTime .toString)))

并像这样使用它:

(transit/writer out :json
                    {:handlers {org.joda.time.DateTime joda-time-writer}})
于 2014-08-29T20:24:58.963 回答
0

要使其与 ring-middleware-format 一起使用,请使用joda-time-writerDavid J.

(defn wrap-format [handler]
  (let [transit-opts {:handlers {org.joda.time.DateTime
                                 joda-time-writer}}]
    (wrap-restful-format handler
                         {:response-options
                          {:transit-json transit-opts
                           :transit-messagepack transit-opts}})))
于 2017-04-26T15:08:40.863 回答