class DoHClient::Client::Request

Public Class Methods

get(url, query) click to toggle source
# File lib/doh_client/client/request.rb, line 13
def self.get(url, query)
  new.get(url, query);
end

Public Instance Methods

get(url, query) click to toggle source
# File lib/doh_client/client/request.rb, line 6
def get(url, query)
  res = http.headers(headers).get(url, params: query);
  return JSON.parse(res.body.to_s) if res.code == 200

  raise ResponseError, res.body.to_s
end
headers() click to toggle source
# File lib/doh_client/client/request.rb, line 17
def headers
  {
    accept: "application/dns-json",
    user_agent: "curl/7.54.0"
  }
end
http() click to toggle source
# File lib/doh_client/client/request.rb, line 24
def http
  if proxy = ENV["HTTPS_RPOXY"] || ENV["https_proxy"]
    uri = URI(proxy)
    HTTP.via(uri.hostname, uri.port)
  else
    HTTP
  end
end