从引发异常中抢救ActionController :: UnknownFormat

时间:2014-01-16 14:31:31

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

我正在努力使ActionController::UnknownFormat不会在生产中引发异常报告。我正在使用Rails 4并且认为这样的事情可以解决问题,但它似乎没有什么区别:

application.rb中

config.action_dispatch.rescue_responses.merge!('ActionController::UnknownFormat' => :not_found)

2 个答案:

答案 0 :(得分:8)

看起来在Rails 4中已经弃用了这个rescue_from语法。所以像这样:

application_controller.rb:

  rescue_from ActionController::UnknownFormat, with: :raise_not_found

  def raise_not_found
    render(text: 'Not Found', status: 404)
  end

答案 1 :(得分:1)

它不应返回状态代码404,应返回状态代码415,即unsupported_media_type

rescue_from ActionController::UnknownFormat, with: :raise_not_found

def raise_not_found
  render(text: 'Not Found', status: :unsupported_media_type)
end