我在我的 sinatra 应用程序中执行了以下操作:
disable :show_exceptions
disable :raise_errors
error do
haml :error, :locals => {:error_message => request.env['sinatra.error'].to_s}
end
get '/error' do
raise "ERROR!!"
end
如果我访问/error
,我会得到一个500 - Internal Server Error
响应代码,这是上帝和想要的。但是如何将代码更改为例如 404 或 501?
答案:
disable :show_exceptions
disable :raise_errors
get '/error' do
halt(404,haml(:error, :locals => {:error_message => request.env['sinatra.error'].to_s}))
end