在Rails上使用rack-timeout gem

Mik*_* H. 4 time ruby-on-rails

我正在尝试在Rails上使用rack-timeout gem.我将该行添加gem 'rack-timeout'到我的Gemfile中并运行bundle install.(显示Using rack-timeout (0.0.4))然后我向我的服务器提交了一个请求.它显然挂了超过15秒而没有向我返回任何东西.我错过了什么?

Jes*_*ott 7

当抛出Rack :: Timeout错误时,你需要告诉Rails该怎么做.

  • 如果你忽略它,执行将在15秒后停止(或者你配置它的任何东西)
  • 如果您想向用户显示一个很好的错误,您需要从该异常中解救(如下所示).

你可以这样做

class ApplicationController < ActionController::Base

  rescue_from Timeout::Error, with: :handle_timeout

  protected
  def handle_timeout
    render "shared/timeout"
  end
end
Run Code Online (Sandbox Code Playgroud)