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