module ApiAuth::Rails::ActiveResourceExtension::Connection
Public Class Methods
included(base)
click to toggle source
# File lib/api_auth/railtie.rb, line 61 def self.included(base) base.send :alias_method, :request_without_auth, :request base.send :alias_method, :request, :request_with_auth base.class_eval do attr_accessor :hmac_secret_key, :hmac_access_id, :use_hmac, :api_auth_options end end
Public Instance Methods
request_with_auth(method, path, *arguments)
click to toggle source
# File lib/api_auth/railtie.rb, line 70 def request_with_auth(method, path, *arguments) if use_hmac && hmac_access_id && hmac_secret_key h = arguments.last tmp = "Net::HTTP::#{method.to_s.capitalize}".constantize.new(path, h) tmp.body = arguments[0] if arguments.length > 1 ApiAuth.sign!(tmp, hmac_access_id, hmac_secret_key, api_auth_options) if tmp['X-Authorization-Content-SHA256'] arguments.last['X-Authorization-Content-SHA256'] = tmp['X-Authorization-Content-SHA256'] end arguments.last['DATE'] = tmp['DATE'] arguments.last['Authorization'] = tmp['Authorization'] end request_without_auth(method, path, *arguments) end