class Lolitado::API
Public Class Methods
add_headers(value)
click to toggle source
define a method to set http headers
@param value [Hash] http header value
# File lib/lolitado/api.rb, line 52 def self.add_headers value @new_headers ||= {} @new_headers = @new_headers.merge(value.to_hash) return @new_headers end
clear_headers()
click to toggle source
clear headers
# File lib/lolitado/api.rb, line 68 def self.clear_headers API.new_headers.clear unless API.new_headers.nil? end
format_response(response, msecs)
click to toggle source
format api response
@param response [String] api response @param msecs [Float] benchmark for api response time
# File lib/lolitado/api.rb, line 12 def self.format_response response, msecs new_response = {:response => response, :message => response.parsed_response, :status => response.code, :duration => msecs} response_with_hash_key = JSON.parse(JSON[new_response], symbolize_names: true) return response_with_hash_key end
new_headers()
click to toggle source
define a method to get http headers
# File lib/lolitado/api.rb, line 61 def self.new_headers return @new_headers end
request(method, endpoint, body = false)
click to toggle source
define a customize http request method for rest api, forward this method to call HTTParty.get or HTTParty.post or HTTParty.put or HTTParty.delete method
@param method [String] http request method @param endpoint [String] http request endpoint @param body [String] http request body
# File lib/lolitado/api.rb, line 26 def self.request method, endpoint, body = false start = Time.now case method.to_s when "get" response = self.get(endpoint, :body => body, :headers => API.new_headers, :verify => false) when "post" response = self.post(endpoint, :body => body, :headers => API.new_headers, :verify => false) when "put" response = self.put(endpoint, :body => body, :headers => API.new_headers, :verify => false) when "delete" response = self.delete(endpoint, :headers => API.new_headers, :verify => false) else warn "#{method} is invalid http method." end finish = Time.now msecs = (finish - start) * 1000.0 clear_headers # puts "RESPONSE - #{msecs}" return self.format_response(response, msecs) end