class ReeHttp::HttpExec

def call(method, url, **opts, &block)

def call(method, url, **opts, &block)
  opts = DEFAULTS.merge(opts)
  request = build_request(
    method, url,
    **slice(opts, [
        :headers, :body, :form_data, :query_params,
        :force_ssl, :ca_certs, :basic_auth, :bearer_token
    ])
  )
  request_opts = slice(
    opts, [
      :timeout, :force_ssl, :ca_certs, :proxy, :write_timeout,
      :redirects_count, :strict_redirect_mode
    ]
  )
  execute_request(request, **request_opts, &block)
end