class Annict::Client
Constants
- ENDPOINT_BASE_URL
Attributes
access_token[R]
Public Class Methods
new(access_token: nil)
click to toggle source
# File lib/annict/client.rb, line 12 def initialize(access_token: nil) @access_token = access_token end
Public Instance Methods
annict_connection()
click to toggle source
# File lib/annict/client.rb, line 29 def annict_connection @annict_connection ||= Faraday.new(faraday_options) do |faraday| faraday.request :json faraday.response :json faraday.adapter Faraday.default_adapter end end
send_get(path, params = {})
click to toggle source
# File lib/annict/client.rb, line 17 def send_get(path, params = {}) send_request(:get, path, params) end
send_post(path, params = {})
click to toggle source
# File lib/annict/client.rb, line 21 def send_post(path, params = {}) send_request(:post, path, params) end
send_request(method, path, params)
click to toggle source
# File lib/annict/client.rb, line 25 def send_request(method, path, params) Annict::Response.new(annict_connection.send(method, path, params)) end
Private Instance Methods
default_headers()
click to toggle source
# File lib/annict/client.rb, line 51 def default_headers { 'Accept' => 'application/json', 'User-Agent' => "Annict Ruby Gem #{Annict::VERSION}" } end
faraday_headers()
click to toggle source
# File lib/annict/client.rb, line 46 def faraday_headers return default_headers unless access_token default_headers.merge(Authorization: "Bearer #{access_token}") end
faraday_options()
click to toggle source
# File lib/annict/client.rb, line 39 def faraday_options { url: ENDPOINT_BASE_URL, headers: faraday_headers } end