Class: Faraday::Request
- Inherits:
-
Struct
- Object
- Struct
- Faraday::Request
- Extended by:
- AutoloadHelper, MiddlewareRegistry
- Defined in:
- lib/faraday/request.rb
Overview
Used to setup urls, params, headers, and the request body in a sane manner.
@connection.post do |req|
req.url 'http://localhost', 'a' => '1' # 'http://localhost?a=1'
req.headers['b'] = '2' # Header
req.params['c'] = '3' # GET Param
req['b'] = '2' # also Header
req.body = 'abc'
end
Defined Under Namespace
Classes: BasicAuthentication, Multipart, Retry, TokenAuthentication, UrlEncoded
Instance Attribute Summary (collapse)
-
- (Object) body
Returns the value of attribute body.
-
- (Object) headers
Returns the value of attribute headers.
-
- (Object) method
Returns the value of attribute method.
-
- (Object) options
Returns the value of attribute options.
-
- (Object) params
Returns the value of attribute params.
-
- (Object) path
Returns the value of attribute path.
Class Method Summary (collapse)
Instance Method Summary (collapse)
- - (Object) [](key)
- - (Object) []=(key, value)
-
- (Object) to_env(connection)
ENV Keys :method - a symbolized request method (:get, :post) :body - the request body that will eventually be converted to a string.
- - (Object) url(path, params = nil)
Methods included from MiddlewareRegistry
lookup_middleware, register_middleware
Methods included from AutoloadHelper
all_loaded_constants, autoload_all, load_autoloaded_constants
Instance Attribute Details
- (Object) body
Returns the value of attribute body
12 13 14 |
# File 'lib/faraday/request.rb', line 12 def body @body end |
- (Object) headers
Returns the value of attribute headers
12 13 14 |
# File 'lib/faraday/request.rb', line 12 def headers @headers end |
- (Object) method
Returns the value of attribute method
12 13 14 |
# File 'lib/faraday/request.rb', line 12 def method @method end |
- (Object) options
Returns the value of attribute options
12 13 14 |
# File 'lib/faraday/request.rb', line 12 def @options end |
- (Object) params
Returns the value of attribute params
12 13 14 |
# File 'lib/faraday/request.rb', line 12 def params @params end |
- (Object) path
Returns the value of attribute path
12 13 14 |
# File 'lib/faraday/request.rb', line 12 def path @path end |
Class Method Details
+ (Object) create(request_method)
31 32 33 34 35 |
# File 'lib/faraday/request.rb', line 31 def self.create(request_method) new(request_method).tap do |request| yield request if block_given? end end |
Instance Method Details
- (Object) [](key)
65 66 67 |
# File 'lib/faraday/request.rb', line 65 def [](key) headers[key] end |
- (Object) []=(key, value)
69 70 71 |
# File 'lib/faraday/request.rb', line 69 def []=(key, value) headers[key] = value end |
- (Object) to_env(connection)
ENV Keys :method - a symbolized request method (:get, :post) :body - the request body that will eventually be converted to a string. :url - URI instance for the current request. :status - HTTP response status code :request_headers - hash of HTTP Headers to be sent to the server :response_headers - Hash of HTTP headers from the server :parallel_manager - sent if the connection is in parallel mode :request - Hash of options for configuring the request.
:timeout - open/read timeout Integer in seconds
:open_timeout - read timeout Integer in seconds
:proxy - Hash of proxy options
:uri - Proxy Server URI
:user - Proxy server username
:password - Proxy server password
:ssl - Hash of options for configuring SSL requests.
89 90 91 92 93 94 95 96 97 |
# File 'lib/faraday/request.rb', line 89 def to_env(connection) { :method => method, :body => body, :url => connection.build_exclusive_url(path, params), :request_headers => headers, :parallel_manager => connection.parallel_manager, :request => , :ssl => connection.ssl} end |
- (Object) url(path, params = nil)
51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/faraday/request.rb', line 51 def url(path, params = nil) if path.respond_to? :query if query = path.query path = path.dup path.query = nil end else path, query = path.split('?', 2) end self.path = path self.params.merge_query query self.params.update(params) if params end |