Class: Net::HTTP::RestClient

Inherits:
Object
  • Object
show all
Defined in:
lib/net/http/rest_client.rb

Overview

Pure ruby http rest client class

Constant Summary collapse

VERSION =
'0.1.0'

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params = {}) ⇒ RestClient

To create class just pass params to constructor

Net::HTTP::RestClient.new :host => '127.0.0.1', :port => 8080


27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/net/http/rest_client.rb', line 27

def initialize params = {}
  defaults = {
    :port       => 80,
    :user_agent => 'Net::HTTP::RestClient'
  }
  if params[:port]==443 && !params[:ssl]
    defaults.merge! :ssl => {
      :use_ssl     => true,
      :verify_mode => OpenSSL::SSL::VERIFY_NONE
    } 
  end
  @params  = defaults.merge(params)
  @cookies = {}
  @headers = {}
  @params[:headers] && @headers=@params[:headers]
  @params[:cookies] && @cookies=@params[:cookies]
end

Instance Attribute Details

#cookiesObject (readonly)

Main longstanding cookies



18
19
20
# File 'lib/net/http/rest_client.rb', line 18

def cookies
  @cookies
end

#headersObject (readonly)

Main longstanding headers



20
21
22
# File 'lib/net/http/rest_client.rb', line 20

def headers
  @headers
end

#paramsObject (readonly)

Main longstanding params (the same params as params at #initialize)



16
17
18
# File 'lib/net/http/rest_client.rb', line 16

def params
  @params
end

#responseObject (readonly)

Returns last Net::HTTP::Response



22
23
24
# File 'lib/net/http/rest_client.rb', line 22

def response
  @response
end

Class Method Details

.versionObject

Get class verion



11
12
13
# File 'lib/net/http/rest_client.rb', line 11

def self.version
  VERSION
end

Instance Method Details

#clear_cookiesObject



45
46
47
# File 'lib/net/http/rest_client.rb', line 45

def clear_cookies
  @cookies = {}
end

#clear_headersObject



49
50
51
# File 'lib/net/http/rest_client.rb', line 49

def clear_headers
  @headers = {}
end

#delete(url, params = {}) ⇒ Object



70
71
72
73
# File 'lib/net/http/rest_client.rb', line 70

def delete url, params = {}
  params[:url] = url
  request Net::HTTP::Delete, params
end

#get(url, params = {}) ⇒ Object



53
54
55
56
# File 'lib/net/http/rest_client.rb', line 53

def get url, params = {}
  params[:url] = url
  request Net::HTTP::Get, params
end

#head(url, params = {}) ⇒ Object



75
76
77
78
# File 'lib/net/http/rest_client.rb', line 75

def head url, params = {}
  params[:url] = url
  request Net::HTTP::Head, params
end

#post(url, data = nil, params = {}) ⇒ Object



58
59
60
61
62
# File 'lib/net/http/rest_client.rb', line 58

def post url, data=nil, params = {}
  params[:url]  = url
  params[:body] = data
  request Net::HTTP::Post, params
end

#put(url, data = nil, params = {}) ⇒ Object



64
65
66
67
68
# File 'lib/net/http/rest_client.rb', line 64

def put url, data=nil, params = {}
  params[:url]  = url
  params[:body] = data
  request Net::HTTP::Put, params
end