带门卫的Rails中的自定义401页面

Sar*_*els 4 ruby-on-rails unauthorized http-status-code-401 doorkeeper

我有一个使用Doorkeeper的Rails 4应用程序,要求在大多数控制器中进行身份验证.当我去其中一条限制路线时,我看到一个空白页面.我在终端注意到,Puma说:

过滤链停止为#Proc:0x007fd650803350 @/.../doorkeeper-0.7.2/lib/doorkeeper/helpers/filter.rb:8呈现或重定向已完成401未授权,1ms(ActiveRecord:0.0ms)

我怎样才能捕获这样的401 Unauthorized错误,以便显示自定义页面?我的目标是使用有关如何进行身份验证的消息呈现JSON响应,而不是仅显示空白页面.

Sar*_*els 7

这实际上是门卫的一个问题.要对401 Unauthorized错误而不是空白页面进行自定义JSON响应,ApplicationController我添加了:

def doorkeeper_unauthorized_render_options
  {json: '{"status": "failure", "message":"401 Unauthorized"}'}
end
Run Code Online (Sandbox Code Playgroud)