Class: OSTSdk::Util::HTTPHelper
- Inherits:
-
Object
- Object
- OSTSdk::Util::HTTPHelper
- Defined in:
- lib/ost-sdk-ruby/util/http_helper.rb
Instance Method Summary collapse
-
#get_signature_for_test(endpoint, request_params) ⇒ Object
Generate a signature for test case.
-
#initialize(params) ⇒ HTTPHelper
constructor
Initialize.
-
#send_delete_request(endpoint, request_params) ⇒ Object
Send DELETE requests.
-
#send_get_request(endpoint, request_params) ⇒ Object
Send GET requests.
-
#send_post_request(endpoint, request_params) ⇒ Object
Send POST requests.
Constructor Details
#initialize(params) ⇒ HTTPHelper
Initialize
Arguments:
api_base_url: (String)
api_key: (String)
api_secret: (String)
api_spec: (Boolean)
21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/ost-sdk-ruby/util/http_helper.rb', line 21 def initialize(params) @api_base_url = params[:api_base_url] @api_key = params[:api_key] @api_secret = params[:api_secret] @api_spec = params[:api_spec] @timeout = 60 if (params.key?(:config)) config = params[:config] if (config.key?(:timeout)) @timeout = config[:timeout] end end end |
Instance Method Details
#get_signature_for_test(endpoint, request_params) ⇒ Object
Generate a signature for test case. It only creates a signature for a given Hash
Arguments:
end_point: (String)
request_params: (Hash)
Returns:
response: (String)
120 121 122 123 124 |
# File 'lib/ost-sdk-ruby/util/http_helper.rb', line 120 def get_signature_for_test(endpoint, request_params) escaped_query_string = get_escaped_query_string(request_params) string_to_sign = "#{endpoint}?#{escaped_query_string}" generate_signature(string_to_sign) end |
#send_delete_request(endpoint, request_params) ⇒ Object
Send DELETE requests
Arguments:
end_point: (String)
request_params: (Hash)
Returns:
response: (Hash)
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 |
# File 'lib/ost-sdk-ruby/util/http_helper.rb', line 93 def send_delete_request(endpoint, request_params) perform_and_handle_exceptions('u_hh_3', 'DELETE request Failed') do escaped_query_string = get_query_string(endpoint, request_params) raw_url = get_api_url(endpoint) + "?#{escaped_query_string}" uri = URI(raw_url) http = setup_request(uri) if @api_spec return {request_uri: uri.to_s.split("?")[0], request_type: 'DELETE', request_params: escaped_query_string} else result = {} Timeout.timeout(@timeout) do result = http.delete(uri) end return format_response(result) end end end |
#send_get_request(endpoint, request_params) ⇒ Object
Send GET requests
Arguments:
end_point: (String)
request_params: (Hash)
Returns:
response: (Hash)
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/ost-sdk-ruby/util/http_helper.rb', line 67 def send_get_request(endpoint, request_params) perform_and_handle_exceptions('u_hh_2', 'GET request Failed') do escaped_query_string = get_query_string(endpoint, request_params) raw_url = get_api_url(endpoint) + "?#{escaped_query_string}" uri = URI(raw_url) if @api_spec return {request_uri: uri.to_s.split("?")[0], request_type: 'GET', request_params: escaped_query_string} else result = {} Timeout.timeout(@timeout) do result = Net::HTTP.get_response(uri) end return format_response(result) end end end |
#send_post_request(endpoint, request_params) ⇒ Object
Send POST requests
Arguments:
end_point: (String)
request_params: (Hash)
Returns:
response: (Hash)
44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/ost-sdk-ruby/util/http_helper.rb', line 44 def send_post_request(endpoint, request_params) perform_and_handle_exceptions('u_hh_1', 'POST request failed') do escaped_query_string = get_query_string(endpoint, request_params) uri = URI(get_api_url(endpoint)) http = setup_request(uri) if @api_spec return {request_uri: uri.to_s, request_type: 'POST', request_params: escaped_query_string} else result = http.post(uri.path, escaped_query_string) return format_response(result) end end end |