错误阻止在Sinatra应用程序中不起作用

kap*_*pso 5 sinatra

我有以下Sinatra应用程序,我正在测试error块,但它似乎没有工作.

这是我的sinatra应用程序:

require 'rubygems'
require 'sinatra'

error do
  puts "----> Failed"
  $stdout.print "----> Failed"
end

get "/*" do
  raise "Error!!"
end
Run Code Online (Sandbox Code Playgroud)

我正在使用sinatra(1.3.3)

Ric*_*tti 6

你可以加:

set :show_exceptions, false
Run Code Online (Sandbox Code Playgroud)

到您的应用程序文件.

在开发环境show_exceptions中默认启用.


Jos*_*gts 4

当 Sinatra 设置development为默认模式时,它使用自己的错误处理程序。为了显示您的错误,您必须以production如下模式运行您的应用程序:

ruby my_app.rb -e production
Run Code Online (Sandbox Code Playgroud)

以下是具体文档的链接以供进一步参考: Sinatra README #Environments