如何从clojure解放器中的post子句返回401代码?

时间:2015-05-04 18:30:07

标签: clojure liberator

我有这样的代码:

(defresource errors []
         :authorized? (fn [ctx] (authorized? ctx))
         :allowed-methods [:post :options]
         :available-media-types media-types
         :post!      (fn [ctx] (-> ctx
                                   parse-json
                                   errors/insert-error)))

授权?函数检查用户令牌,但我有一些其他规则,我想检查内部帖子!功能。怎么做?我可以从帖子中抛出异常!功能,但我想返回401状态代码。

1 个答案:

答案 0 :(得分:2)

从您的问题中不清楚您想要检查:post!函数,但在正常情况下,:post!函数中的失败不会返回401错误。< / p>

如果你想返回401,那么你可能应该在:authorized?函数中检查请求,并从中返回true或false。

如果您可以详细说明要检查的规则,那么我的答案可能会更具体。

您可能已经完成了此操作,但请确保您了解Liberator decision graph以及您的请求是如何流过它的。