Médiaforma

Java – Tester une connexion HTTP

Print Friendly

Pour savoir si une connexion vers une URL qui utilise le protocole HTTP s’est bien déroulée, le plus simple consiste à faire appel à la méthode getResponseCode() ou getResponseMessage() de la classe HttpURLConnection.

Les codes de réponse retournés par la fonction getResponseCode() sont listés sur la page http://docs.oracle.com/javase/8/docs/api/java/net/HttpURLConnection.html. En voici quelques-uns :

 

Code Constante Signification
200 HTTP_OK Connexion réussie
408 HTTP_CLIENT_TIMEOUT Dépassement de délai dans l’exécution de la requête
404 HTTP_NOT_FOUND Fichier inexistant
500 HTTP_INTERNAL_ERROR Erreur interne sur le serveur

 

Voici un exemple d’utilisation des méthodes getResponseCode(), getResponseMessage() et des constantes de la classe HttpURLConnection  :

import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class TesterConnexionHTTP {

    public static void main(String[] args) {
      URL uneURL=null;
      int ch;
      try {
        uneURL = new URL("http://lem.korp.free.fr/ReadMe.txt");
        HttpURLConnection connexion = (HttpURLConnection)uneURL.openConnection();
        InputStream flux = connexion.getInputStream();
        System.out.println("Status de la connexion : " + connexion.getResponseMessage());
        if (connexion.getResponseCode() == HttpURLConnection.HTTP_OK)
          while ((ch=flux.read())!= -1)
            System.out.print((char) ch);
        flux.close(); 
        connexion.disconnect();
      } 
      catch(Exception e) {
          System.out.println(e);
      }
    }
}
Vous avez aimé cet article ? Partagez-le avec vos réseaux...
 
Comments

No comments yet.

Leave a Reply