Class: EacEnvs::Http::Request
- Inherits:
-
Object
- Object
- EacEnvs::Http::Request
show all
- Defined in:
- lib/eac_envs/http/request.rb,
lib/eac_envs/http/request/body_field.rb,
lib/eac_envs/http/request/body_fields.rb,
lib/eac_envs/http/request/body_field_value.rb
Defined Under Namespace
Classes: BodyField, BodyFieldValue, BodyFields
Constant Summary
collapse
- BOOLEAN_MODIFIERS =
%w[ssl_verify].freeze
- COMMON_MODIFIERS =
%w[auth body_data response_body_data_proc url verb].freeze
- HASH_MODIFIERS =
%w[header].freeze
- MODIFIERS =
COMMON_MODIFIERS + BOOLEAN_MODIFIERS + HASH_MODIFIERS.map(&:pluralize)
Instance Method Summary
collapse
Instance Method Details
#basic_auth(username, password) ⇒ Object
24
25
26
|
# File 'lib/eac_envs/http/request.rb', line 24
def basic_auth(username, password)
auth(::Struct.new(:username, :password).new(username, password))
end
|
#faraday_connection ⇒ Faraday::Connection
29
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/eac_envs/http/request.rb', line 29
def faraday_connection
::Faraday.default_connection_options[:headers] = {}
::Faraday::Connection.new(faraday_connection_options) do |conn|
if body_with_file?
conn.request :multipart, flat_encode: true
else
conn.request :url_encoded
end
auth.if_present { |v| conn.request :authorization, :basic, v.username, v.password }
end
end
|
#faraday_connection_options ⇒ Hash
42
43
44
45
46
|
# File 'lib/eac_envs/http/request.rb', line 42
def faraday_connection_options
{
request: { params_encoder: Faraday::FlatParamsEncoder }, ssl: { verify: ssl_verify? }
}
end
|
#faraday_response ⇒ Faraday::Response
49
50
51
52
53
54
55
|
# File 'lib/eac_envs/http/request.rb', line 49
def faraday_response
conn = faraday_connection
conn.send(sanitized_verb, url) do |req|
req. = conn..merge()
sanitized_body_data.if_present { |v| req.body = v }
end
end
|
#response ⇒ Object
57
58
59
|
# File 'lib/eac_envs/http/request.rb', line 57
def response
::EacEnvs::Http::Response.new(self)
end
|
#sanitized_verb ⇒ Symbol
62
63
64
|
# File 'lib/eac_envs/http/request.rb', line 62
def sanitized_verb
verb.if_present(VERB_GET) { |v| self.class.lists.verb.value_validate!(v) }
end
|