2012-08-13 1 views
0

J'essaie de tester si un uri est valide (par exemple, a effectivement un contenu, ne pas tester s'il est bien formé ici) en utilisant le code ruby, et je peux ouvrir un uri en utilisant open(uri). Mais dans mon cas, l'uri est un lien vers un fichier à télécharger et je ne veux pas avoir à télécharger tout le fichier juste pour vérifier qu'il y a du contenu là-bas.Ruby openuri test si uri est valide

Existe-t-il une autre solution pour cela?

Répondre

3

Essayez cette

require 'net/http' 
u = URI.parse('http://www.example.com/') 
status = Net::HTTP.start(u.host, u.port).head(u.request_uri).code 
# status is HTTP status code 

Vous aurez besoin d'utiliser de sauvetage pour attraper exception en cas de résolution de domaine échoue.

+0

Merci, la demande de tête semble être ce que je cherchais. –

Questions connexes