class MWS::Request
Constants
- DEFAULT_METHOD
Public Class Methods
new(args)
click to toggle source
# File lib/mws/request.rb, line 10 def initialize(args) @method = args[:method] || DEFAULT_METHOD @path = args[:path] @endpoint = args[:endpoint] @headers = args[:headers] || {} @body = args[:body] || "" end
Public Instance Methods
execute()
click to toggle source
# File lib/mws/request.rb, line 18 def execute client = Net::HTTP.new(@endpoint, 443) client.use_ssl = true client.start do |https| case @method when :post then return https.post(@path, @body, headers) else raise ArgumentError, "#{@method} is unknown HTTP method" end end end
Private Instance Methods
headers()
click to toggle source
# File lib/mws/request.rb, line 32 def headers { "Content-Type" => "text/xml", "Content-MD5" => Base64.encode64(Digest::MD5.digest(@body)), "User-Agent" => "MarketplaceWebService/#{MWS::VERSION} (Language=Ruby)", "Host" => @endpoint }.merge(@headers) end