class Anilistrb::GqlClient

Public Class Methods

new(url) click to toggle source
# File lib/Anilistrb/GqlClient.rb, line 6
def initialize(url)
  @url = url
end

Public Instance Methods

build_request(query:, variables: nil) click to toggle source
# File lib/Anilistrb/GqlClient.rb, line 10
def build_request(query:, variables: nil)
  [ @url, 
    headers: { 'Content-Type' => 'application/json', 'Accept' => 'application/json' },
    body: { query: query, variables: variables }.to_json ]
end
request(method:, query:, variables: nil) click to toggle source
# File lib/Anilistrb/GqlClient.rb, line 16
def request(method:, query:, variables: nil)
  # TODO: check if status code not 200
  if method == 'POST'
    HTTParty.post(*build_request(query: query, variables: variables))
  elsif method == 'GET'
    HTTParty.get(*build_request(query: query, variables: variables))
  else                       
    puts "#{method} not supported."
  end
end