Module: Requests
- Extended by:
- Sugar
- Defined in:
- lib/requests.rb,
lib/requests/sugar.rb
Defined Under Namespace
Modules: Sugar Classes: Error, Response
Constant Summary collapse
- CA_FILE =
ENV.fetch('REQUESTS_CA_FILE', File.('../cacert.pem', __FILE__))
Class Method Summary collapse
Methods included from Sugar
delete, get, head, options, patch, post, put, trace
Class Method Details
.request(method, url, headers: {}, data: nil, params: nil, auth: nil) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/requests.rb', line 20 def self.request(method, url, headers: {}, data: nil, params: nil, auth: nil) uri = URI.parse(url) uri.query = encode_www_form(params) if params body = process_params(headers: headers, data: data) if data basic_auth(headers, *auth) if auth response = Net::HTTP.start(uri.host, uri.port, opts(uri)) do |http| http.send_request(method, uri, body, headers) end if response.is_a?(Net::HTTPSuccess) Response.new(response.code, response.to_hash, response.body) else raise Error, response end end |