Sha256: 6e7607d889e47048537de2e28f7623f21fdf073d858334c5e9e3efffb018f40a

Contents?: true

Size: 802 Bytes

Versions: 1

Compression:

Stored size: 802 Bytes

Contents

# frozen_string_literal: true

require 'http'
require 'link-header-parser'
require 'nokogiri'

require_relative 'endpoints/version'

require_relative 'endpoints/client'
require_relative 'endpoints/parser'
require_relative 'endpoints/response_body_parser'
require_relative 'endpoints/response_headers_parser'

module IndieWeb
  module Endpoints
    class Error < StandardError; end
    class HttpError < Error; end
    class InvalidURIError < Error; end
    class SSLError < Error; end

    # Discover a URL's IndieAuth, Micropub, Microsub, and Webmention endpoints
    #
    #   IndieWeb::Endpoints.get('https://aaronparecki.com')
    #
    # @param url [String] an absolute URL
    # @return [Hash{Symbol => String, Array, nil}]
    def self.get(url)
      Client.new(url).endpoints
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
indieweb-endpoints-7.1.0 lib/indieweb/endpoints.rb