タグ

Rackに関するkic-yuukiのブックマーク (2)

  • Rails の rescue_from で拾えない例外を exceptions_app で処理する - Qiita

    rescue_from で拾えない例外がある Rails が用意してくれている rescue_from は controller の外側で発生した例外を拾ってくれない。 例えばパラメータに不正なエンコーディングが含まれるときに、Rails は ActionController::BadRequest を例外として投げる。しかし、この処理は Rails の routing 層で行われているため rescue_from で捕捉することはできない。 そのため Rails の外で発生した例外を捕捉していない場合、ユーザには意図していないエラーページが見えている可能性がある。 Rails の外で起きる例外は exceptions_app で処理するのがお手軽 例えば config/initializers/exceptions_app.rb に以下のコードを書いておく(ErrorsControlle

    Rails の rescue_from で拾えない例外を exceptions_app で処理する - Qiita
    kic-yuuki
    kic-yuuki 2019/06/07
    exceptions_app - こいつでルーティング周りの例外を拾ってやればいいらしげかな...
  • devise を知るにはまず warden を知るが良い - vimtaku blog

    背景 devise という gem があるが、warden をベースにした認証の仕組みだということだった。 devise を知るには、まず warden を知らなければなるまい。 そう思った俺は warnden を rack ベースでいじってみることにした。 warden とは これのこと。 https://github.com/hassox/warden wiki が充実していたのでかなりわかりやすかった。 https://github.com/hassox/warden/wiki とりあえずやってみる、以下メモ書き。 config.rb require 'rack' require 'pp' require 'warden' class Application def call(env) request = Rack::Request.new(env) response = if re

    kic-yuuki
    kic-yuuki 2019/06/06
    warden、理解した(気がする)
  • 1