Je voudrais surveiller un simple url. Mais quand c'est un serveur https, j'obtiens une exception poignée de main. Est-il possible de vérifier l'état d'une URL https de la façon dont le navigateur utilise pour se connecter? (sans avoir de certificat local). Je ne sais pas comment les navigateurs peuvent obtenir du contenu à partir d'une URL https mais je voudrais le faire de la même manière. Sans avoir besoin de stocker un certificat spécifique pour chaque serveur. Le https surveillé devrait être n'importe qui.Surveiller une connexion HTTPS avec la classe d'URL (Java)
try {
URL u = new URL(row.getUrl());
String protocol = u.getProtocol();
if(protocol.equals("https")) {
HttpsURLConnection hc = (HttpsURLConnection)u.openConnection();
System.out.println("Response Code: " + hc.getResponseCode());
hc.disconnect();
}
if(protocol.equals("http")) {
u.openConnection();
u.getContent();
}
System.out.println("url is up.");
} catch (Exception e) {
(...)
}
Le certificat du serveur est-il approuvé? C'est à dire. signé par une autorité de certification et non expiré? Si ce n'est pas le cas, vous devrez peut-être faire quelques cajoleries pour que cela fonctionne correctement. L'acceptation de certificats auto-signés peut nécessiter un travail supplémentaire. –
non, il devrait être un hôte que vous souhaitez tester la disponibilité. –