Comment obtenir uniquement le code de réponse d'une requête HTTP en Ruby
J'ai une liste d'url, j'ai besoin de vérifier lequel des url suivantes sont valides.
Le code que j'ai utilisé est
require 'net/http'
url = 'http://mysite.com'
res = Net::HTTP.get_response(URI.parse(url.to_s))
puts res.code
Ici, je peux vérifier le code de réponse 200 pour une url valide. Ma préoccupation est la 'res' objet renvoyé contient du code, le corps, etc. Donc ma réponse (res objet) devient lourd. Est-il un moyen pour que je puisse obtenir uniquement le code de réponse. Je n'ai pas besoin d'autres infos. S'il vous plaît aider
source d'informationauteur Amal Kumar S
Vous devez vous connecter pour publier un commentaire.
Je n'ai pas vérifier si c'est possible de le faire avec Net::HTTP, mais vous pouvez utiliser le Trottoir, qui est le Rubis wrapper pour le roulage.
Regardez
Curl::Facile#http_head
Avec Net::HTTP, vous pouvez également utiliser
HTTP#head
qui demande des en-têtes du serveur à l'aide de la méthode HEAD.D'informations sur HTTP de la méthode de TÊTE:
Pour obtenir le code de réponse d'une page:
C'est plus facile dans Faraday:
Le code que j'ai utilisé est:
Une requête HEAD pourrait ressembler à ceci: