Rails: вернуть 401?

Я хочу вернуть ошибку HTTP 401 как часть моего метода permission_denied для declarative_authorization.

# triggered when a user accesses a page that they don't have access to
def permission_denied
  # render my default 401 error page?
end

Как мне это сделать? (Помилуй вопрос, если это глупо... Я знаю, как сделать страницу 401.html в моем общедоступном каталоге, но я не думаю, что он возвращает HTTP-заголовок 401, и это то, что я за ним.)

Ответ 1

Вы можете добавить опцию :status

def permission_denied
  render :file => "public/401.html", :status => :unauthorized
end