Method: Rack::PerftoolsProfiler::ProfileOnce#delete_custom_params

Defined in:
lib/rack/perftools_profiler/profile_once.rb

#delete_custom_params(env) ⇒ Object



36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/rack/perftools_profiler/profile_once.rb', line 36

def delete_custom_params(env)
  # I used to clone the env, but it broke any apps that used Warden
  # ex) new_env = env.clone
  new_env = env
  
  get_params = Rack::Request.new(new_env).GET
  get_params.delete('profile')
  get_params.delete('times')
  get_params.delete('printer')
  get_params.delete('ignore')
  get_params.delete('focus')

  new_env.delete('rack.request.query_string')
  new_env.delete('rack.request.query_hash')

  new_env['QUERY_STRING'] = build_query(get_params)
  new_env
end