class BadgerVision::Request
Attributes
client[R]
data[R]
http_method[R]
Public Class Methods
new(http_method, endpoint)
click to toggle source
Initialize a Request
@param http_method
[Symbol] HTTP verb as sysmbol @param endpoint [String] The relative API endpoint @param data [Hash] Attributes / Options as a Hash
# File lib/badger_vision/request.rb, line 12 def initialize(http_method, endpoint) @data = data @endpoint = endpoint @http_method = http_method end
post(endpoint, options = {})
click to toggle source
Make a HTTP POST Request
@param endpoint [String] The relative API endpoint @param options [Hash] The additional query params @return Hash
# File lib/badger_vision/request.rb, line 33 def self.post(endpoint, options = {}) new(:post, endpoint).request(options) end
Public Instance Methods
request(options = {})
click to toggle source
Make a HTTP Request
@param options [Hash] Additonal options hash @return Hash
# File lib/badger_vision/request.rb, line 23 def request(options = {}) connection.send(http_method, api_endpoint, default_options.merge(options)).body end
Private Instance Methods
api_endpoint()
click to toggle source
# File lib/badger_vision/request.rb, line 58 def api_endpoint ["", config.base_path, @endpoint].join("/").squeeze("/") end
config()
click to toggle source
# File lib/badger_vision/request.rb, line 41 def config BadgerVision.configuration end
connection()
click to toggle source
# File lib/badger_vision/request.rb, line 68 def connection @connection ||= Faraday.new(faraday_options) do |faraday| faraday.request :url_encoded # form-encode POST params faraday.response :logger # log requests to STDOUT faraday.adapter Faraday.default_adapter # make requests with Net::HTTP end end
default_options()
click to toggle source
# File lib/badger_vision/request.rb, line 45 def default_options { random: Time.now.to_i * 1000, data: nil, date: Time.now.to_i * 1000, demoimg: 0, } end
faraday_options()
click to toggle source
# File lib/badger_vision/request.rb, line 62 def faraday_options { url: places_host } end
places_host()
click to toggle source
# File lib/badger_vision/request.rb, line 54 def places_host config.api_host end