class ShippingEasy::Http::Request
Attributes
body[RW]
http_method[RW]
params[RW]
relative_path[RW]
Public Class Methods
connect!(options = {})
click to toggle source
# File lib/shipping_easy/http/request.rb, line 12 def self.connect!(options = {}) new(options).connect! end
new(options = {})
click to toggle source
# File lib/shipping_easy/http/request.rb, line 5 def initialize(options = {}) @http_method = options.fetch(:http_method, :get) @params = options.fetch(:params, {}) @body = options[:payload] && options[:payload].to_json @relative_path = options.delete(:relative_path) end
Public Instance Methods
adapter()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 35 def adapter ShippingEasy.configuration.http_adapter.new(self) end
api_key()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 43 def api_key ShippingEasy.api_key end
api_secret()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 39 def api_secret ShippingEasy.api_secret end
base_url()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 47 def base_url ShippingEasy.base_url end
connect!()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 16 def connect! sign_request! adapter.connect! end
sign_request!()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 21 def sign_request! params[:api_key] = api_key params[:api_timestamp] = Time.now.to_i params[:api_signature] = signature.to_s end
signature()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 31 def signature ShippingEasy::Signature.new(api_secret: api_secret, method: http_method, path: uri, params: params, body: body) end
uri()
click to toggle source
# File lib/shipping_easy/http/request.rb, line 27 def uri "/api#{relative_path}" end