Sha256: 2bd686ef290fa5ee972cc3a3b7669ae482b894dbd42d942af5c8c1794faabfb4
Contents?: true
Size: 761 Bytes
Versions: 5
Compression:
Stored size: 761 Bytes
Contents
module Tito class OAuth2Middleware < FaradayMiddleware::OAuth2 def call(env) params = query_params(env[:url]) token = params.delete(:api_key) || params.delete('api_key') token ||= if @token.is_a?(Proc) @token.call(env) else @token end token ||= Tito.api_key if token.respond_to?(:empty?) && !token.empty? env[:url].query = build_query params env[:request_headers][AUTH_HEADER] ||= %(Bearer #{token}) end @app.call env end def initialize(app, token = nil, options = {}) super(app) options, token = token, nil if token.is_a? Hash @token = token raise ArgumentError, ":param_name can't be blank" if @param_name.empty? end end end
Version data entries
5 entries across 5 versions & 1 rubygems