首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Rails:返回401?

Rails:返回401?
EN

Stack Overflow用户
提问于 2010-01-16 08:28:59
回答 2查看 48.6K关注 0票数 62

作为declarative_authorizationpermission_denied方法的一部分,我想返回一个HTTP401错误。

代码语言:javascript
复制
# 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页面,但我不认为它会返回401HTTP头,而这正是我想要的。)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-01-16 08:32:24

您可以添加:status选项

代码语言:javascript
复制
def permission_denied
  render :file => "public/401.html", :status => :unauthorized
end
票数 98
EN

Stack Overflow用户

发布于 2021-06-06 10:33:17

在这里,你不必通过评论来寻找一个现代的答案。

之前的答案在Rails 5.1中已被弃用

将以下任意一项放入您的控制器操作中:

渲染文件/模板

代码语言:javascript
复制
render :file => "public/401", :status => :unauthorized

呈现JSON

代码语言:javascript
复制
render status: :unauthorized, json: { error: "You are not authorized to access this resource. Verify that you are passing passing your token." }

不渲染任何内容

代码语言:javascript
复制
head :unauthorized
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2075645

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档