Class: TerraformDevKit::Request
- Inherits:
-
Object
- Object
- TerraformDevKit::Request
- Defined in:
- lib/TerraformDevKit/request.rb
Instance Method Summary collapse
- #execute(raise_on_codes: []) ⇒ Object
-
#initialize(url, query_strings: [], headers: {}) ⇒ Request
constructor
A new instance of Request.
Constructor Details
#initialize(url, query_strings: [], headers: {}) ⇒ Request
Returns a new instance of Request.
6 7 8 9 10 |
# File 'lib/TerraformDevKit/request.rb', line 6 def initialize(url, query_strings: [], headers: {}) @url = url @query_strings = query_strings @headers = headers end |
Instance Method Details
#execute(raise_on_codes: []) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/TerraformDevKit/request.rb', line 12 def execute(raise_on_codes: []) url = URI.parse(@url) url.query = URI.encode_www_form(@query_strings) unless @query_strings.empty? puts "Fetching #{url}" = { redirect: false, ssl_verify_mode: OpenSSL::SSL::VERIFY_NONE } .merge!(@headers) URI.open(url, ) rescue OpenURI::HTTPError => error response = error.io raise if raise_on_codes.include?(response.status[0]) response end |