Module: HTTParty::ClassMethods
- Defined in:
- lib/httparty.rb
Instance Method Summary collapse
-
#base_uri(uri = nil) ⇒ Object
Allows setting a base uri to be used for each request.
-
#basic_auth(u, p) ⇒ Object
Allows setting basic authentication username and password.
- #cookies(h = {}) ⇒ Object
-
#default_options ⇒ Object
:nodoc:.
-
#default_params(h = {}) ⇒ Object
Allows setting default parameters to be appended to each request.
- #delete(path, options = {}) ⇒ Object
-
#format(f) ⇒ Object
Allows setting the format with which to parse.
-
#get(path, options = {}) ⇒ Object
Allows making a get request to a url.
-
#headers(h = {}) ⇒ Object
Allows setting a base uri to be used for each request.
-
#http_proxy(addr = nil, port = nil) ⇒ Object
Allows setting http proxy information to be used.
-
#post(path, options = {}) ⇒ Object
Allows making a post request to a url.
- #put(path, options = {}) ⇒ Object
Instance Method Details
#base_uri(uri = nil) ⇒ Object
Allows setting a base uri to be used for each request. Will normalize uri to include http, etc.
class Foo
include HTTParty
base_uri 'twitter.com'
end
55 56 57 58 |
# File 'lib/httparty.rb', line 55 def base_uri(uri=nil) return [:base_uri] unless uri [:base_uri] = HTTParty.normalize_base_uri(uri) end |
#basic_auth(u, p) ⇒ Object
Allows setting basic authentication username and password.
class Foo
include HTTParty
basic_auth 'username', 'password'
end
66 67 68 |
# File 'lib/httparty.rb', line 66 def basic_auth(u, p) [:basic_auth] = {:username => u, :password => p} end |
#cookies(h = {}) ⇒ Object
95 96 97 98 |
# File 'lib/httparty.rb', line 95 def (h={}) raise ArgumentError, 'Cookies must be a hash' unless h.is_a?(Hash) .(h) end |
#default_options ⇒ Object
:nodoc:
152 153 154 |
# File 'lib/httparty.rb', line 152 def #:nodoc: @default_options end |
#default_params(h = {}) ⇒ Object
Allows setting default parameters to be appended to each request. Great for api keys and such.
class Foo
include HTTParty
default_params :api_key => 'secret', :another => 'foo'
end
77 78 79 80 81 |
# File 'lib/httparty.rb', line 77 def default_params(h={}) raise ArgumentError, 'Default params must be a hash' unless h.is_a?(Hash) [:default_params] ||= {} [:default_params].merge!(h) end |
#delete(path, options = {}) ⇒ Object
148 149 150 |
# File 'lib/httparty.rb', line 148 def delete(path, ={}) perform_request Net::HTTP::Delete, path, end |
#format(f) ⇒ Object
Allows setting the format with which to parse. Must be one of the allowed formats ie: json, xml
class Foo
include HTTParty
format :json
end
107 108 109 110 |
# File 'lib/httparty.rb', line 107 def format(f) raise UnsupportedFormat, "Must be one of: #{AllowedFormats.values.map { |v| v.to_s }.uniq.sort.join(', ')}" unless AllowedFormats.value?(f) [:format] = f end |
#get(path, options = {}) ⇒ Object
Allows making a get request to a url.
class Foo
include HTTParty
end
# Simple get with full url
Foo.get('http://foo.com/resource.json')
# Simple get with full url and query parameters
# ie: http://foo.com/resource.json?limit=10
Foo.get('http://foo.com/resource.json', :query => {:limit => 10})
124 125 126 |
# File 'lib/httparty.rb', line 124 def get(path, ={}) perform_request Net::HTTP::Get, path, end |
#headers(h = {}) ⇒ Object
Allows setting a base uri to be used for each request.
class Foo
include HTTParty
headers 'Accept' => 'text/html'
end
89 90 91 92 93 |
# File 'lib/httparty.rb', line 89 def headers(h={}) raise ArgumentError, 'Headers must be a hash' unless h.is_a?(Hash) [:headers] ||= {} [:headers].merge!(h) end |
#http_proxy(addr = nil, port = nil) ⇒ Object
Allows setting http proxy information to be used
class Foo
include HTTParty
http_proxy 'http://foo.com', 80
end
43 44 45 46 |
# File 'lib/httparty.rb', line 43 def http_proxy(addr=nil, port = nil) [:http_proxyaddr] = addr [:http_proxyport] = port end |
#post(path, options = {}) ⇒ Object
Allows making a post request to a url.
class Foo
include HTTParty
end
# Simple post with full url and setting the body
Foo.post('http://foo.com/resources', :body => {:bar => 'baz'})
# Simple post with full url using :query option,
# which gets set as form data on the request.
Foo.post('http://foo.com/resources', :query => {:bar => 'baz'})
140 141 142 |
# File 'lib/httparty.rb', line 140 def post(path, ={}) perform_request Net::HTTP::Post, path, end |
#put(path, options = {}) ⇒ Object
144 145 146 |
# File 'lib/httparty.rb', line 144 def put(path, ={}) perform_request Net::HTTP::Put, path, end |