Class: Userbin::Request::Middleware::ContextHeaders

Inherits:
Faraday::Middleware
  • Object
show all
Defined in:
lib/userbin/request.rb

Overview

Adds request context like IP address and user agent to any request.

Instance Method Summary collapse

Instance Method Details

#call(env) ⇒ Object



63
64
65
66
67
68
69
70
71
# File 'lib/userbin/request.rb', line 63

def call(env)
  userbin_headers = RequestStore.store.fetch(:userbin_headers, [])
  userbin_headers.each do |key, value|
    header =
      "X-Userbin-#{key.to_s.gsub('_', '-').gsub(/\w+/) {|m| m.capitalize}}"
    env[:request_headers][header] = value
  end
  @app.call(env)
end