Sha256: 6968ab538b475230de9022088a6dfb7bfd6299bec5318c55f55727d30a9eea79

Contents?: true

Size: 860 Bytes

Versions: 1

Compression:

Stored size: 860 Bytes

Contents

# frozen_string_literal: true

require "json"
require "net/http"

# TronHttp
module TronHttp
  # HTTP
  module HTTP
    def self.get(uri, _params = {})
      http = Net::HTTP.new(uri.host, 443)
      http.use_ssl = true

      request = Net::HTTP::Get.new(uri)

      default_headers(request)

      response = http.request(request)
      JSON.parse response.body
    end

    def self.post(uri, params = {})
      http = Net::HTTP.new(uri.host, 443)
      http.use_ssl = true

      request = Net::HTTP::Post.new(uri)
      request.body = JSON.generate(params)

      default_headers(request)

      response = http.request(request)
      JSON.parse response.body
    end

    # Set request default_headers
    def self.default_headers(request)
      request["accept"] = "application/json"
      request["content-type"] = "application/json"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tron_http-0.1.1 lib/tron_http/http.rb