我想测试许多 URL,并且想知道每个 URL 的 HTTP 状态,而无需在浏览器中点击它们。
有人对宝石有想法,可以帮助我找到解决方案吗?
我想测试许多 URL,并且想知道每个 URL 的 HTTP 状态,而无需在浏览器中点击它们。
有人对宝石有想法,可以帮助我找到解决方案吗?
标准 Ruby 怎么样,没有额外的宝石(只是require 'net/http'
):
Net::HTTP.new('google.com').head('/').code
#=> "301"
如果由于某种原因您想做的不仅仅是头部请求,请替换head
为get
.
我很确定你可以用标准的红宝石(Net::HTTP
和朋友)来实现这一点。然而,有很多宝石可以处理这样的事情。我对Typhoeus有偏见。
例子 :
Typhoeus::Request.get('http://google.fr').code
=> 301
使用HTTParty:
uri = "http://url.to.inspect"
request = HTTParty.get( uri )
return true if request.code.to_i == 200