Class: ApiClient::Connection::Middlewares::Request::OAuth

Inherits:
Faraday::Middleware
  • Object
show all
Defined in:
lib/api_client/connection/middlewares/request/oauth.rb

Overview

Instance Method Summary collapse

Constructor Details

#initialize(app, options = {}) ⇒ OAuth

Returns a new instance of OAuth.



18
19
20
# File 'lib/api_client/connection/middlewares/request/oauth.rb', line 18

def initialize(app, options = {})
  @app, @options = app, options
end

Instance Method Details

#call(env) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
# File 'lib/api_client/connection/middlewares/request/oauth.rb', line 6

def call(env)
  params = env[:body] || {}
  signature_params = params.reject{ |k,v| v.respond_to?(:content_type) }

  header = SimpleOAuth::Header.new(env[:method], env[:url], signature_params, @options || {})

  env[:request_headers]['Authorization'] = header.to_s
  env[:request_headers]['User-Agent'] = "ApiClient gem v#{ApiClient::VERSION}"

  @app.call(env)
end