无法覆盖读取方法URI :: HTTP

时间:2013-01-21 01:56:58

标签: ruby override

我试图将以下内容存根:

uri = URI(base_url)
source = uri.read

我重写了read方法,如下所示: equire'open-uri'

 module OpenURI

    module OpenRead 

      def read                                               
        return IO.read('source.html')                        
      end                                                       

    end

  end

但它似乎不起作用。红宝石的新手,可以使用一些指针。我似乎总是最终

NoMethodError: undefined method `read' for #<URI::HTTP:0x10ac59918>

1 个答案:

答案 0 :(得分:0)

uri = URI(base_url)
source = uri.read

您使用read方法,因此请查看它的位置:

uri.method(:read).method_location

如果您想知道覆盖的位置,请转到

uri.method(:read).owner

或只是

def uri.read
  <your body>
end