ruby-on-rails - 在 Rails 上使用机架超时 gem

标签 ruby-on-rails time

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

最佳答案

您需要告诉 Rails 在抛出 Rack::Timeout 错误时要做什么。

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

  • 你可以做这样的事情
    class ApplicationController < ActionController::Base
    
      rescue_from Timeout::Error, with: :handle_timeout
    
      protected
      def handle_timeout
        render "shared/timeout"
      end
    end
    

    关于ruby-on-rails - 在 Rails 上使用机架超时 gem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17031076/

    相关文章:

    ruby-on-rails - 在 ruby​​ on rails ENV 中 stub 键/值对

    java - 完全消除对 Android 时钟的依赖并使用来自服务器的自定义时间

    visual-studio - 我在 VS 项目上工作了多久?

    javascript - Ruby on Rails : Javascript: prototype. js:3483 未捕获类型错误:无法调用 null 的方法 'getElementsByTagName'

    ruby-on-rails - 订购 .each 结果在 View 中

    ruby-on-rails - 在 Rails 3 中,跟踪给定 RESTful 资源的访问次数的最有效方法是什么?

    linux - bash 内置时间命令的精度是多少?

    MySQL 时间比较

    python - 生成时间以供人类查看的更优雅版本

    ruby-on-rails - slug 更改时自动重写