Class: Rack::SockJS::ExtractServerAndSession
- Inherits:
-
Object
- Object
- Rack::SockJS::ExtractServerAndSession
- Defined in:
- lib/rack/sockjs.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app) ⇒ ExtractServerAndSession
constructor
A new instance of ExtractServerAndSession.
Constructor Details
#initialize(app) ⇒ ExtractServerAndSession
Returns a new instance of ExtractServerAndSession.
126 127 128 |
# File 'lib/rack/sockjs.rb', line 126 def initialize(app) @app = app end |
Instance Method Details
#call(env) ⇒ Object
130 131 132 133 134 135 136 137 138 139 140 141 |
# File 'lib/rack/sockjs.rb', line 130 def call(env) match = SERVER_SESSION_REGEXP.match(env["SCRIPT_NAME"]) env["sockjs.server-id"] = match[1] env["sockjs.session-key"] = match[2] old_script_name, old_path_name = env["SCRIPT_NAME"], env["PATH_INFO"] env["SCRIPT_NAME"] = env["SCRIPT_NAME"] + match[0] env["PATH_INFO"] = match.post_match return @app.call(env) ensure env["SCRIPT_NAME"], env["PATH_INFO"] = old_script_name, old_path_name end |