Sha256: ea9b3bb01da81d28a185c477ee28020c8839baa7fb68a881a564495400d56f05
Contents?: true
Size: 842 Bytes
Versions: 4
Compression:
Stored size: 842 Bytes
Contents
module Webmention module Endpoint class Request HTTP_HEADERS_OPTS = { accept: '*/*', user_agent: 'Webmention Endpoint Discovery (https://rubygems.org/gems/webmention-endpoint)' }.freeze def initialize(uri) raise ArgumentError, "uri must be an Addressable::URI (given #{uri.class.name})" unless uri.is_a?(Addressable::URI) @uri = uri end def response @response ||= HTTP.follow.headers(HTTP_HEADERS_OPTS).timeout( connect: 10, read: 10 ).get(@uri) rescue HTTP::ConnectionError => error raise ConnectionError, error rescue HTTP::TimeoutError => error raise TimeoutError, error rescue HTTP::Redirector::TooManyRedirectsError => error raise TooManyRedirectsError, error end end end end
Version data entries
4 entries across 4 versions & 1 rubygems