0

我想测试许多 URL,并且想知道每个 URL 的 HTTP 状态,而无需在浏览器中点击它们。

有人对宝石有想法,可以帮助我找到解决方案吗?

4

3 回答 3

2

标准 Ruby 怎么样,没有额外的宝石(只是require 'net/http'):

Net::HTTP.new('google.com').head('/').code
#=> "301"

如果由于某种原因您想做的不仅仅是头部请求,请替换headget.

于 2012-09-12T08:30:13.820 回答
1

我很确定你可以用标准的红宝石(Net::HTTP和朋友)来实现这一点。然而,有很多宝石可以处理这样的事情。我对Typhoeus有偏见。

例子 :

Typhoeus::Request.get('http://google.fr').code
=> 301
于 2012-09-12T08:25:04.027 回答
0

使用HTTParty

uri = "http://url.to.inspect"

request = HTTParty.get( uri )
return true if request.code.to_i == 200
于 2012-09-12T08:22:44.513 回答