class NCCConfidence::Http
Attributes
auth_type[RW]
curl[RW]
headers[RW]
password[RW]
payload[RW]
redirects[RW]
ssl[RW]
uri[RW]
username[RW]
Public Class Methods
new()
click to toggle source
# File lib/nccconfidence/http_client.rb, line 22 def initialize self.headers = {} end
request(&scipt)
click to toggle source
# File lib/nccconfidence/http_client.rb, line 7 def request &scipt t = self.new t.instance_eval(&scipt) t end
Public Instance Methods
body()
click to toggle source
# File lib/nccconfidence/http_client.rb, line 52 def body self.curl.body_str end
header(name, content)
click to toggle source
# File lib/nccconfidence/http_client.rb, line 26 def header name, content self.headers[name] = content end
make_request_of(request_method)
click to toggle source
# File lib/nccconfidence/http_client.rb, line 36 def make_request_of (request_method) self.curl = Curl::Easy.new(self.uri) do |http| setup_request request_method, http end self.curl.ssl_verify_peer = self.ssl ||false self.curl.http request_method if self.curl.response_code == 301 self.uri = self.curl.redirect_url make_request_of request_method end end
response()
click to toggle source
# File lib/nccconfidence/http_client.rb, line 48 def response self.curl.response_code end
setup_request(method,http)
click to toggle source
# File lib/nccconfidence/http_client.rb, line 56 def setup_request method,http http.headers['request-method'] = method.to_s http.headers.update(headers) http.max_redirects = self.redirects || 3 http.post_body = self.payload || nil http.http_auth_types = self.auth_type || nil http.username = self.username || nil http.password = self.password || nil http.useragent = "curb" http end