http://www.sinatrarb.com/intro.html#Error%20Handling こちらを見ると例外はRackオブジェクトのsinatra.errorに入っているとあるが、ブロック引数としても受け取ることができる。 (バージョン1.4.4で確認) require "sinatra" # developmentモードでもデバッグ表示させない set :show_exceptions, false # ブロック引数で例外オブジェクトを受け取る error do |e| status 500 # これでもできるけど #body env['sinatra.error'].message # これでもよい body e.message end get "/hoge" do raise "hoge" end $ bundle exec ruby app.rb $ curl lo
Padrinoでエラーのハンドリングを行うには、以下のように書くんだけど、これだけだとダメで、 class MyApp < Padrino::Application # いろいろ省略 # こんな感じでエラー処理をカスタマイズ error do puts "ここにエラー処理をかく" end end 以下のサイトによると、 Sinatra's error handler with custom exceptions does not work · Issue #403 · padrino/padrino-framework · GitHub 次の2行を追加しないと、実行されないらしい。 class MyApp < Padrino::Application #いろいろ省略 # 以下の2行を追加 disable :raise_errors disable :show_exceptions # こん
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く