为rails-api root提供403错误

时间:2014-03-16 22:54:49

标签: ruby-on-rails ruby-on-rails-4 rails-api

我使用rails-api创建移动api,当用户访问api的url时,我得到了预期的#34; Welcome Aboard"页。我想要做的是删除它,如果用户尝试使用Web浏览器转到根URL,则只需向用户提供403页(或404)。

我知道我可以创建一个控制器(error_pages),然后将它与routes.rb中的方法(no_access)匹配,然后在views目录中有一个默认呈现的页面。

root 'error_pages#no_access' # in routes.rb

我假设有一种更简单的方法可以通过Rails魔术实现这一目标。

编辑:

我找到了这篇SO文章:

Where is the default "Welcome Aboard" page located in my app?

它声明从Rails 4开始,index.html不再位于public /目录中,因为它包含在gem中。

routes.rb文件中是否可以指向公共目录中的一个错误页面?

我尝试了以下操作但它不起作用:

root' public / 404.html'

我不想创建一个只指向错误页面的控制器,是否有更好的rails方式?

1 个答案:

答案 0 :(得分:0)

只需删除public/index.html即可。这将导致对根路径的请求的 404(未找到)响应。