Class: FaradayMiddleware::YoutubeOAuth

Inherits:
Faraday::Middleware
  • Object
show all
Defined in:
lib/youtube_it/middleware/faraday_oauth.rb

Instance Method Summary collapse

Constructor Details

#initialize(app, options) ⇒ YoutubeOAuth

Returns a new instance of YoutubeOAuth.



17
18
19
# File 'lib/youtube_it/middleware/faraday_oauth.rb', line 17

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

Instance Method Details

#call(env) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
# File 'lib/youtube_it/middleware/faraday_oauth.rb', line 5

def call(env)
  params = env[:body].is_a?(Hash) ? 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

  @app.call(env)
end