我有以下Sinatra应用程序,我正在测试error
块,但它似乎无法正常工作。
这是我的sinatra应用程序:
require 'rubygems'
require 'sinatra'
error do
puts "----> Failed"
$stdout.print "----> Failed"
end
get "/*" do
raise "Error!!"
end
我正在使用sinatra(1.3.3)
答案 0 :(得分:6)
您可以添加:
set :show_exceptions, false
到您的申请文件。
在开发环境中,默认情况下启用show_exceptions
。
答案 1 :(得分:4)
Sinatra在development
模式下设置时使用自己的错误处理程序,默认情况下是这样。为了显示您的错误,您必须以production
模式运行您的应用,如下所示:
ruby my_app.rb -e production
以下是特定文档的链接以供进一步参考: Sinatra README #Environments
答案 2 :(得分:0)
确保您没有使用测试版的机架
gem list rack
如果你看到如下内容:
rack-1.6.0.beta
卸载此版本并使用先前版本rack-1.5.2