class DiasporaFederation::HttpClient
A wrapper for {github.com/lostisland/faraday Faraday}
@see Discovery::Discovery
@see Federation::Fetcher
Public Class Methods
connection()
click to toggle source
Gets the Faraday connection
@return [Faraday::Connection] the response
# File lib/diaspora_federation/http_client.rb, line 23 def self.connection create_default_connection unless @connection @connection.dup end
get(uri)
click to toggle source
Perform a GET request
@param [String] uri the URI @return [Faraday::Response] the response
# File lib/diaspora_federation/http_client.rb, line 16 def self.get(uri) connection.get(uri) end
Private Class Methods
create_default_connection()
click to toggle source
# File lib/diaspora_federation/http_client.rb, line 28 def self.create_default_connection options = { request: {timeout: DiasporaFederation.http_timeout}, ssl: {ca_file: DiasporaFederation.certificate_authorities} } @connection = Faraday::Connection.new(options) do |builder| builder.use Faraday::FollowRedirects::Middleware, limit: DiasporaFederation.http_redirect_limit builder.adapter Faraday.default_adapter end @connection.headers["User-Agent"] = DiasporaFederation.http_user_agent end