Bonjour,
J'aimerais savoir comment gérer l’absence d'un site web lors de l'envoi d'une requête HTTP par Android, pour éviter que le programme se plante ?
Quelqu'un saurait-il m'expliquer comment faire ?
Merci d'avance pour votre aide.
Version imprimable
Bonjour,
J'aimerais savoir comment gérer l’absence d'un site web lors de l'envoi d'une requête HTTP par Android, pour éviter que le programme se plante ?
Quelqu'un saurait-il m'expliquer comment faire ?
Merci d'avance pour votre aide.
- Tu fais ta requête et si le code (statusCode) de la réponse est 404 alors c'est que le site n'existe pas.
- D'autre part, il faut réaliser cette requête dans un thread séparé du thread principal d'affichage (UIThread) pour éviter que tout se bloque ;-)
404 = site existe, mais l'url n'existe pas sur ce site !
sur un site qui n'existe pas, il ne peut pas y avoir de code retour http, c'est la connection qui plante avec une exception.
donc:
Code:
1
2
3
4
5
6
7
8
9
10
11 ASyncThread() { doInBackground() { try { HttpResponse resp = client.execute(request); resp.getStatus(); // <= gestion des erreurs "HTTP" } catch (Exception ex) { // gestion des erreurs "TCP/IP" } } }