Sinatra 錯(cuò)誤

2023-12-20 15:43 更新

error 處理器,在任何路由代碼塊或者過(guò)濾器拋出異常的時(shí)候會(huì)被調(diào)用。異常對(duì)象可以通過(guò) sinatra.error Rack 變量獲得:

error do
  'Sorry there was a nasty error - ' + env['sinatra.error'].name
end

自定義錯(cuò)誤:

error MyCustomError do
  'So what happened was...' + env['sinatra.error'].message
end

那么,當(dāng)這個(gè)發(fā)生的時(shí)候:

get '/' do
  raise MyCustomError, 'something bad'
end

你會(huì)得到:

So what happened was... something bad

另一種替代方法是,為一個(gè)狀態(tài)碼安裝錯(cuò)誤處理器:

error 403 do
  'Access forbidden'
end

get '/secret' do
  403
end

或者一個(gè)范圍:

error 400..510 do
  'Boom'
end

在運(yùn)行在 development 環(huán)境下時(shí),Sinatra 會(huì)安裝特殊的 not_found 和 error 處理器。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)