我使用liberator进行REST服务,我的内容类型是json。
当:authorized?
(或其他决定)失败时,会返回我不想要的text/html
。
我需要解放器来为所有类型的错误返回json数据格式。
答案 0 :(得分:2)
specificity可用于自定义在不同情况下要执行的操作,例如句柄ok,找不到资源或未对用户进行身份验证。例如:
(resource
:available-media-types ["application/json"]
:authorized? (fn [ctx] ...)
:handle-unauthorized {:message "You need to be authenticated"}
:exists? (fn [ctx] ...)
:handle-not-found {:message "Resource not found"})
与其他情况一样,handler可以是常量值,也可以是生成它的函数。