我想以这种方式使用 URI:
require 'open-uri'
uri = URI.parse('http://subdomain.domain.com/section/page.html')
puts uri.first_level_domain # => 'domain.com'
我怎样才能做到这一点?
我正在努力:
module URI
def parse
ret = super
domain = ret.host.split('.').last(2).join('.')
ret.send(:define_method, :first_level_domain, lambda { domain })
ret
end
end
但我明白了undefined method 'first_level_domain' for #<URI::HTTP:0x9bc7ab0> (NoMethodError)