Как вернуть код 401 из почтового предложения в clojure освободитель?

У меня есть такой код:

(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 ответ

Решение

Из вашего вопроса не ясно, что вы хотите проверить в :post! функции, но в нормальном случае, сбой в :post! функция не вернет ошибку 401.

Если вы хотите вернуть 401, то вам, вероятно, следует проверить запрос в :authorized? функция и возвращая истину или ложь из этого.

Если вы можете уточнить, какие правила вы хотите проверить, тогда мой ответ может быть более конкретным.

Вы, вероятно, уже сделали это, но убедитесь, что понимаете график решений Liberator и как ваш запрос проходит через него.

Другие вопросы по тегам