Class: EaseEngine::HTTP

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

Class Method Summary collapse

Class Method Details

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



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/ease_engine/http.rb', line 14

def self.get( url, params = {} )
  uri = self.parse url
  uri.query = URI.encode_www_form( params )
  request = Net::HTTP::Get.new uri
  http = Net::HTTP.new( uri.host, uri.port )
  response = http.start{|http|
    http.use_ssl = self.is_ssl( uri )
    http.request request
  }
  
  case response
  when Net::HTTPRedirection
    response = self.get response[ "location" ]
  end
  response
end

.is_ssl(uri) ⇒ Object



10
11
12
# File 'lib/ease_engine/http.rb', line 10

def self.is_ssl( uri )
  "https" == uri.scheme
end

.parse(url) ⇒ Object



5
6
7
8
# File 'lib/ease_engine/http.rb', line 5

def self.parse( url )
  uri = URI.parse url
  uri
end

.post(url, params = {}) ⇒ Object



31
32
33
34
35
36
37
38
39
40
# File 'lib/ease_engine/http.rb', line 31

def self.post( url, params = {} )
  uri = self.parse url
  request = Net::HTTP::Post.new uri
  request.set_form_data( params )
  response = Net::HTTP.start( uri.host, uri.port ){|http|
    http.use_ssl = self.is_ssl( uri )
    http.request request
  }
  response
end