ブラウザ以外のUserAgentからRailsアプリケーションにリクエストを送る場合、Railsが管理しているsessionの仕組みとは別に、自分でセッションをセットアップしたくなる事があります。 そのような場合は、たとえばクエリパラメータからsession_idを渡したりするのですが、GET methodで受け渡したsession_idからRailsのsessionを再現するためには、以下のように記述します。 1 FooController < ApplicationController 2 session :off, :if => (proc do |req| 3 return false unless req.parameters[:action] == 'bar' 4 if req.parameters[:session_id] 5 @original_session_o