在执行ruby
中的DNS查询时,最终输出会添加“nil”,这是指什么?或者它仅仅是行尾的表示?为什么RUBY DNS查询输出附加'nil'?
代码:
require 'resolv'
Resolv::DNS.new.each_address("google.com") { |addr| puts addr }
感谢
在执行ruby
中的DNS查询时,最终输出会添加“nil”,这是指什么?或者它仅仅是行尾的表示?为什么RUBY DNS查询输出附加'nil'?
代码:
require 'resolv'
Resolv::DNS.new.each_address("google.com") { |addr| puts addr }
感谢
这是因为each_address
只是做了块通过代码的处理。这不会返回任何东西,这就是为什么你最终看到nil
。
each_address(名称)
迭代在从DNS解析器中检索的名称的所有IP地址。
each_address
只是遍历从DNS解析器中检索的名称的所有IP地址,不返回任何东西,所以你得到nil
此代码返回nil,因为puts
returns nil。