diff --git a/lib/contrib/uri_ext.rb b/lib/contrib/uri_ext.rb index c1229e8..7337ca5 100644 --- a/lib/contrib/uri_ext.rb +++ b/lib/contrib/uri_ext.rb @@ -278,6 +278,9 @@ def read(options = nil, &block) def connect if proxy = proxy_uri proxy = URI.parse(proxy) if String === proxy + if URI::Generic === proxy + proxy = URI("#{scheme}://#{proxy.to_s}") + end http = Net::HTTP.new(host, port, proxy.host, proxy.port, proxy.user, proxy.password) else http = Net::HTTP.new(host, port)