Sha256: 92d03348cb920fcbdd1ce7c3c39db97a5ba78f2e46139de6dac247331184f1ea
Contents?: true
Size: 884 Bytes
Versions: 10
Compression:
Stored size: 884 Bytes
Contents
module Braintree class GraphQLClient < Http # :nodoc: def initialize(config) @config = config @graphql_headers = { 'Accept' => 'application/json', 'Braintree-Version' => @config.graphql_api_version, 'Content-Type' => 'application/json' } end def query(definition, variables = {}, operationName = nil) graphql_connection = _setup_connection(@config.graphql_server, @config.graphql_port) request = {} request['query'] = definition request['operationName'] = operationName if operationName request['variables'] = variables response = _http_do Net::HTTP::Post, @config.graphql_base_url, request.to_json, nil, graphql_connection, @graphql_headers data = JSON.parse(response.body, :symbolize_names => true) Util.raise_exception_for_graphql_error(data) data end end end
Version data entries
10 entries across 10 versions & 1 rubygems