A library for handling DID identifiers used in Bluesky AT Protocol

set max_redirects to 5 by default

+3 -4
+1 -1
lib/didkit/did.rb
··· 61 url = URI("#{pds_host}/xrpc/com.atproto.sync.getRepoStatus") 62 url.query = URI.encode_www_form(:did => @did) 63 64 - response = get_response(url, { max_redirects: 5 }) 65 status = response.code.to_i 66 is_json = (response['Content-Type'] =~ /^application\/json(;.*)?$/) 67
··· 61 url = URI("#{pds_host}/xrpc/com.atproto.sync.getRepoStatus") 62 url.query = URI.encode_www_form(:did => @did) 63 64 + response = get_response(url) 65 status = response.code.to_i 66 is_json = (response['Content-Type'] =~ /^application\/json(;.*)?$/) 67
+1 -1
lib/didkit/requests.rb
··· 11 } 12 13 redirects = 0 14 - max_redirects = options[:max_redirects] || 0 15 16 loop do 17 response = Net::HTTP.start(url.host, url.port, request_options) do |http|
··· 11 } 12 13 redirects = 0 14 + max_redirects = options[:max_redirects] || 5 15 16 loop do 17 response = Net::HTTP.start(url.host, url.port, request_options) do |http|
+1 -2
lib/didkit/resolver.rb
··· 10 module DIDKit 11 class Resolver 12 RESERVED_DOMAINS = %w(alt arpa example internal invalid local localhost onion test) 13 - MAX_REDIRECTS = 5 14 15 include Requests 16 ··· 50 51 def resolve_handle_by_well_known(domain) 52 url = "https://#{domain}/.well-known/atproto-did" 53 - response = get_response(url, max_redirects: MAX_REDIRECTS) 54 55 if response.is_a?(Net::HTTPSuccess) && (text = response.body) 56 return parse_did_from_well_known(text)
··· 10 module DIDKit 11 class Resolver 12 RESERVED_DOMAINS = %w(alt arpa example internal invalid local localhost onion test) 13 14 include Requests 15 ··· 49 50 def resolve_handle_by_well_known(domain) 51 url = "https://#{domain}/.well-known/atproto-did" 52 + response = get_response(url) 53 54 if response.is_a?(Net::HTTPSuccess) && (text = response.body) 55 return parse_did_from_well_known(text)