class DceLti::Middleware::CookieShim
Public Class Methods
new(app)
click to toggle source
# File lib/dce_lti/middleware/cookie_shim.rb, line 4 def initialize(app) @app = app end
Public Instance Methods
call(env)
click to toggle source
# File lib/dce_lti/middleware/cookie_shim.rb, line 8 def call(env) if env['HTTP_COOKIE'].to_s.strip.empty? params = parse_query_string(env) if params[session_key_name.to_s] env['HTTP_COOKIE'] = "#{session_key_name}=#{params[session_key_name.to_s]};shimmed_cookie=1" end end @app.call(env) end
Private Instance Methods
parse_query_string(env)
click to toggle source
# File lib/dce_lti/middleware/cookie_shim.rb, line 21 def parse_query_string(env) query_string = env['QUERY_STRING'] params = {} query_string.split('&').each do |parameter| (key, value) = parameter.split('=') params[key] = value end params end
session_key_name()
click to toggle source
# File lib/dce_lti/middleware/cookie_shim.rb, line 31 def session_key_name @session_key_name ||= Rails.application.config.session_options[:key] end