class Lableb::Client
Public Instance Methods
buildQueryString(params)
click to toggle source
# File lib/lableb_client.rb, line 41 def buildQueryString(params) res = [] params.each do | key, value | if value.kind_of? Array res.push(value.map{|el| "#{key}=#{el}"}) elsif value.is_a? Hash value.each do | key2, val2 | temp = {} if val2.is_a? String temp[key] = "#{key2}:\"#{val2}\"" elsif val2.is_a? Array temp[key] = val2.map{|el| "#{key2}:\"#{el}\""} end res.push(buildQueryString(temp)) end else res.push("#{key}=#{value.to_s}") end end res.join("&") end
createRequest(url, headers)
click to toggle source
# File lib/lableb_client.rb, line 7 def createRequest(url, headers) http = Net::HTTP.new(url.host, url.port) headers.each do | key, value | req[key] = value end http.use_ssl = true return http end
deleteJSON(url, qs = {}, headers = {})
click to toggle source
# File lib/lableb_client.rb, line 33 def deleteJSON(url, qs = {}, headers = {}) uri = URI("#{url}?#{self.buildQueryString(qs)}") http = self.createRequest(uri, headers) req = Net::HTTP::Delete.new(uri) response = http.request(req) return response end
getJSON(url, qs = {}, headers = {})
click to toggle source
# File lib/lableb_client.rb, line 16 def getJSON(url, qs = {}, headers = {}) uri = URI("#{url}?#{self.buildQueryString(qs)}") http = self.createRequest(uri, headers) req = Net::HTTP::Get.new(uri) response = http.request(req) return response end
postJSON(url, body = {}, qs = {}, headers = {})
click to toggle source
# File lib/lableb_client.rb, line 24 def postJSON(url, body = {}, qs = {}, headers = {}) uri = URI("#{url}?#{self.buildQueryString(qs)}") http = self.createRequest(uri, headers) req = Net::HTTP::Post.new(uri, { 'Content-Type': 'application/json' }) req.body = body.to_json response = http.request(req) return response end