Class: HTTPWrapper
- Inherits:
-
Object
- Object
- HTTPWrapper
- Defined in:
- lib/http_wrapper/errors.rb,
lib/http_wrapper/request.rb,
lib/http_wrapper/version.rb,
lib/http_wrapper/constants.rb,
lib/http_wrapper/http_wrapper.rb
Defined Under Namespace
Classes: Error, Request, TooManyRedirectsError
Constant Summary collapse
- VERSION =
'5.0.0'- USER_AGENT =
"HTTPWrapper/#{HTTPWrapper::VERSION}; Ruby/#{RUBY_VERSION}".freeze
- CONTENT_TYPE_HEADER_NAME =
'content-type'- USER_AGENT_HEADER_NAME =
'user-agent'- COOKIE_HEADER_NAME =
'cookie'- AJAX_HEADER_NAME =
'x-requested-with'- DEFAULT_CONTENT_TYPE =
'text/html; charset=UTF-8'- JSON_CONTENT_TYPE =
'application/json; charset=UTF-8'- POST_CONTENT_TYPE =
'application/x-www-form-urlencoded'- MULTIPART_CONTENT_TYPE =
'multipart/form-data'- AJAX_HEADER =
{ AJAX_HEADER_NAME => 'XMLHttpRequest' }.freeze
- JSON_HEADER =
{ CONTENT_TYPE_HEADER_NAME => JSON_CONTENT_TYPE }.freeze
- AJAX_JSON_HEADER =
AJAX_HEADER.merge(JSON_HEADER).freeze
- HEADERS_FOR_REQUEST_TYPE =
{ 'ajax' => AJAX_HEADER, 'json' => JSON_HEADER, 'ajax_json' => AJAX_JSON_HEADER }.freeze
- HTTP_METHODS =
{ get: Net::HTTP::Get, post: Net::HTTP::Post, put: Net::HTTP::Put, delete: Net::HTTP::Delete }.freeze
- REQUEST_TYPES =
%w[ajax json ajax_json].freeze
Instance Attribute Summary collapse
-
#logger ⇒ Object
Returns the value of attribute logger.
-
#max_redirects ⇒ Object
Returns the value of attribute max_redirects.
-
#timeout ⇒ Object
Returns the value of attribute timeout.
-
#user_agent ⇒ Object
Returns the value of attribute user_agent.
-
#verify_cert ⇒ Object
Returns the value of attribute verify_cert.
Instance Method Summary collapse
- #execute(request, uri) ⇒ Object
-
#initialize(timeout: 10, verify_cert: true, logger: nil, max_redirects: 10, user_agent: USER_AGENT) ⇒ HTTPWrapper
constructor
A new instance of HTTPWrapper.
- #post_and_get_cookie(url, **params) ⇒ Object
Constructor Details
#initialize(timeout: 10, verify_cert: true, logger: nil, max_redirects: 10, user_agent: USER_AGENT) ⇒ HTTPWrapper
Returns a new instance of HTTPWrapper.
17 18 19 20 21 22 23 |
# File 'lib/http_wrapper/http_wrapper.rb', line 17 def initialize(timeout: 10, verify_cert: true, logger: nil, max_redirects: 10, user_agent: USER_AGENT) @timeout = timeout @verify_cert = verify_cert @logger = logger @max_redirects = max_redirects @user_agent = user_agent end |
Instance Attribute Details
#logger ⇒ Object
Returns the value of attribute logger.
15 16 17 |
# File 'lib/http_wrapper/http_wrapper.rb', line 15 def logger @logger end |
#max_redirects ⇒ Object
Returns the value of attribute max_redirects.
15 16 17 |
# File 'lib/http_wrapper/http_wrapper.rb', line 15 def max_redirects @max_redirects end |
#timeout ⇒ Object
Returns the value of attribute timeout.
15 16 17 |
# File 'lib/http_wrapper/http_wrapper.rb', line 15 def timeout @timeout end |
#user_agent ⇒ Object
Returns the value of attribute user_agent.
15 16 17 |
# File 'lib/http_wrapper/http_wrapper.rb', line 15 def user_agent @user_agent end |
#verify_cert ⇒ Object
Returns the value of attribute verify_cert.
15 16 17 |
# File 'lib/http_wrapper/http_wrapper.rb', line 15 def verify_cert @verify_cert end |
Instance Method Details
#execute(request, uri) ⇒ Object
54 55 56 57 |
# File 'lib/http_wrapper/http_wrapper.rb', line 54 def execute(request, uri) connection = create_connection uri connection.request request end |
#post_and_get_cookie(url, **params) ⇒ Object
49 50 51 52 |
# File 'lib/http_wrapper/http_wrapper.rb', line 49 def (url, **params) response = post(url, **params) response['set-cookie'] end |