ruby-on-rails – 如何在rails中为特定URL设置超时

我使用机架超时,它工作正常.
但我无法弄清楚如何为特定的URL设置时间.

即使我喜欢:

map '/foo/bar' do
  Rack::Timeout.timeout = 10
end

不仅是/ foo / bar动作,而且每个动作都会在10秒后消失.

是否可以为特定URL设置超时?
或者我应该使用除机架超时之外的其他解决方案?

解决方法

如果您担心特定操作运行时间过长,我会将关注的代码包装在Timeout块中,而不是尝试在URL级别上强制执行超时.您可以轻松地将下面的内容包装到辅助方法中,并在整个控制器中使用变量超时.

require "timeout'"
begin
  status = Timeout::timeout(10) {
  # Potentially long process here...
}
rescue Timeout::Error
  puts 'This is taking way too long.'
end

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...