class TwitterJekyll::ApiClient
Wrapper around an API @api private
Public Instance Methods
fetch(api_request)
click to toggle source
Perform API request; return hash with html content
# File lib/jekyll-twitter-plugin-2.rb, line 71 def fetch(api_request) uri = api_request.to_uri response = Net::HTTP.start(uri.host, use_ssl: api_request.ssl?) do |http| http.read_timeout = 5 http.open_timeout = 5 http.get uri.request_uri, REQUEST_HEADERS end handle_response(api_request, response) rescue Timeout::Error => e ErrorResponse.new(api_request, e.class.name).to_h end
Private Instance Methods
handle_response(api_request, response)
click to toggle source
# File lib/jekyll-twitter-plugin-2.rb, line 87 def handle_response(api_request, response) case response when Net::HTTPSuccess JSON.parse(response.body) else ErrorResponse.new(api_request, response.message).to_h end end