Module: HTTPray
- Defined in:
- lib/httpray.rb,
lib/httpray/version.rb
Defined Under Namespace
Classes: CircuitBreakerError, Connection, Timeout
Constant Summary collapse
- DEFAULT_HEADERS =
{ "User-Agent" => "HTTPray #{VERSION}", "Accept" => "*/*", "Connection" => "keep-alive" }.freeze
- VERSION =
"1.1.3".freeze
Class Method Summary collapse
- .request(*args) ⇒ Object
- .request!(method, uri, headers = {}, body = nil, timeout = 1, ssl_context = nil) ⇒ Object
Class Method Details
.request(*args) ⇒ Object
130 131 132 133 134 135 |
# File 'lib/httpray.rb', line 130 def self.request(*args) socket = request!(*args) yield(socket) if block_given? ensure socket.close if socket && !socket.closed? end |
.request!(method, uri, headers = {}, body = nil, timeout = 1, ssl_context = nil) ⇒ Object
122 123 124 125 126 127 128 |
# File 'lib/httpray.rb', line 122 def self.request!(method, uri, headers = {}, body = nil, timeout = 1, ssl_context = nil) uri = URI.parse(uri) unless URI === uri ssl_context = nil ssl_context = OpenSSL::SSL::SSLContext.new if uri.scheme == "https" ark = Connection.new(uri.host, uri.port, timeout, ssl_context, 0) ark.request!(method, uri, {"Connection" => ""}.merge(headers), body) end |