Rack on Rails

15 giugno 2010

Rack on Rails

Rails utilizza in modo esteso Rack; a testimonianza di ciò per la versione 2.3.x esiste un file denominato middlewares.rb all’interno della gemma actionpack che elenca i middleware implementati da Rails:

use "Rack::Lock", :if => lambda {
  !ActionController::Base.allow_concurrency
}

use "ActionController::Failsafe"

use lambda { ActionController::Base.session_store },
    lambda { ActionController::Base.session_options }

use "ActionController::ParamsParser"
use "Rack::MethodOverride"
use "Rack::Head"

use "ActionController::StringCoercion"

Rails fornisce inoltre un set di API con le quali è possibile aggiungere e rimuovere anelli a questa catena; ad esempio se si volesse agganciare la classe Reverse si potrebbe inserire all’interno del file environment.rb dell’applicazione (nel blocco Rails::Initializer.run do |config|):

 config.middleware.use Reverse

Implementando questa piccola modifica nel file di configurazione di un applicazione Rails già esistente ogni pagina HTML prodotta da tale progetto verrebbe presentata al browser con ogni contenuto testuale invertito.

Se vuoi aggiornamenti su Rack on Rails inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Rack on Rails

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy