class IpResolvers::IpInfoIo
Public Class Methods
new(resolver)
click to toggle source
# File lib/dnsign/ip_resolvers/ip_info_io.rb, line 4 def initialize(resolver) @resolver = resolver end
Public Instance Methods
fetch()
click to toggle source
# File lib/dnsign/ip_resolvers/ip_info_io.rb, line 8 def fetch uri = URI 'http://ipinfo.io/json' res = ::Net::HTTP.get_response uri if /2../.match res.code data = JSON.parse res.body data.fetch 'ip' else raise Error::InvalidResponseFromIpResolverService "Invalid response for #{self.class} with code: #{res.code}; body: #{res.body}" end end