我有一个网址列表,我需要检查以下哪个网址有效。

我使用的代码是

require 'net/http'

url = 'http://mysite.com'
res = Net::HTTP.get_response(URI.parse(url.to_s))
puts res.code

在这里,我可以检查响应代码200以获取有效的网址。我关心的是返回的“res”对象包含代码,正文等。因此,我的响应(res对象)变得很沉重。有什么办法可以让我只获得响应代码。我不需要任何其他信息。请帮忙

最佳答案

我没有检查是否可以使用Net::HTTP,但是您可以使用Curb,这是curl的Ruby包装器。
Curl::Easy#http_head

通过Net::HTTP,您还可以使用 HTTP#head ,它使用HEAD方法从服务器请求 header 。

有关HTTP方法HEAD的信息:



获取页面的响应代码:

require 'net/http'
response = nil
Net::HTTP.start('www.example.com', 80) {|http|
  response = http.head('/page.html')
}
puts response.code

10-07 19:53
查看更多