我使用devise
在我的Rails应用程序中进行身份验证,并且我的路由定义如下:
App::Application.Routes.Draw do
namespace :api do
...
...
authenticated :user do
dashboard_routes
...
end
end
match '*a', to: 'errors#routing', via: %i[get post put patch delete]
end
最后的匹配会为找不到的任何路由发送404
。问题是因为我使用了设计authenticated
方法,所以如果用户未登录并尝试访问受用户限制的URL /方法,它仍然会发送404
而不是403
与为未经授权的路由发送404
相比,有没有一种方法可以发送403
呢?