2010-10-26 6 views
0

J'ai besoin de vérifier si une url particulière est en place ou non. Le format de l'URL est commeVérification de l'url est en cours ou non?

http://IP:port 

Lorsque j'utilise java.net.URL classe puis-je obtenir java.net.SocketException ou java.net.ConnectException.

Lorsque je ping ces adresses IP, je les trouve alors pourquoi Java n'est pas capable de les reconnaître?

Le code que je vous écris est

URL url = new URL(urlString); 
HttpURLConnection httpConn = (HttpURLConnection)url.openConnection(); 
httpConn.setInstanceFollowRedirects(false); 
httpConn.setRequestMethod("HEAD"); 
httpConn.connect(); 

numéro de port est doit utiliser! Comment puis-je les vérifier en utilisant java?

+0

Vous vous rendez compte que le ConnectException signale que, du point de vue de la machine, ce code est en cours d'exécution, l'URL est "pas en haut", non? Si la définition de "not up" est "ne peut pas être connecté à partir de cette machine". –

Répondre

1

fonctionne très bien d'ici:

ou pour l'échec:

URL url = new URL("http://google.com:666/"); 
HttpURLConnection httpConn = (HttpURLConnection)url.openConnection(); 
httpConn.setInstanceFollowRedirects(false); 
httpConn.setRequestMethod("HEAD"); 
try{ 
    httpConn.connect(); 
    System.out.println("google.com : " + httpConn.getResponseCode()); 
}catch(java.net.ConnectException e){ 
    System.out.println("google.com:666 is down "); 
} 
+0

Oui. Mais je dois le faire le numéro de port! – Rites

0

Peut-être il y a quelque chose d'autre se passe mais je trouve cette page de l'avoir fait exactement ce que vous voulez: http://www.rgagnon.com/javadetails/java-0059.html

Ils n'ont pas les numéros de port dans l'URL cependant.

+0

Pourriez-vous partager le port ip: port ou est-il interne? Pouvez-vous trouver un exemple que nous pouvons tester? –

1

Il se pourrait que les serveurs sont opérationnels (répondre aux ping), mais qu'aucun serveur HTTP est écoute sur ce port.

Questions connexes