2
這裏有一個捕手攔截在底座上我第一次嘗試:如何編寫一個簡單的錯誤攔截器?
(definterceptorfn catcher []
(interceptor
:error (fn [context error]
{:status 500
:body (->> error .toString (hash-map :error) json/write-str)
:headers {"Content-type" "application/json"}})))
正如我可以測試,通過增加(/ 10)我的代碼,該函數不被調用,但客戶端得到一個空狀態爲200的響應,而不是地圖中的響應。我想知道爲什麼是這樣。
沒有什麼花哨的在我的路線變量:
(defroutes routes
[[["/api"
^:interceptors [(body-params/body-params) (catcher) bootstrap/html-body]
...