-2
je le code suivant:Android Essayer de faire confiance à un certificat auto-signé, obtenir un pas d'erreur connexion homologue
AsyncTask asyncTask = new AsyncTask() {
@Override
protected Object doInBackground(Object[] params) {
try {
HostnameVerifier hostnameVerifier = org.apache.http.conn.ssl.SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER;
DefaultHttpClient client = new DefaultHttpClient();
SchemeRegistry registry = new SchemeRegistry();
SSLSocketFactory socketFactory = SSLSocketFactory.getSocketFactory();
socketFactory.setHostnameVerifier((X509HostnameVerifier) hostnameVerifier);
registry.register(new Scheme("https", socketFactory, 443));
SingleClientConnManager mgr = new SingleClientConnManager(client.getParams(), registry);
DefaultHttpClient httpClient = new DefaultHttpClient(mgr, client.getParams());
// Set verifier
HttpsURLConnection.setDefaultHostnameVerifier(hostnameVerifier);
// Example send http request
final String url = "https://192.168.1.13:8090/version";
HttpPost httpPost = new HttpPost(url);
HttpResponse response = httpClient.execute(httpPost);
Log.i("","response is:" + response);
}catch (Exception e){
Log.e("","error trying to get:" + e.getMessage());
}
return null;
}
};
asyncTask.execute();
Je reçois la question suivante:
10-12 10:53:37.546: E/(24916): error trying to get:No peer certificate
10-12 10:53:38.890: E/Finsky(18904): [1] com.google.android.vending.verifier.ah.a(713): Verification id=44 error response com.android.volley.NoConnectionError: java.net.UnknownHostException: Unable to resolve host "safebrowsing.google.com": No address associated with hostname
Qu'est-ce que je fais mal?
'connexion .. refused' suggère votre serveur est en panne. Est-ce vraiment l'écoute du port 8090? Est-ce la bonne adresse IP? Tout pare-feu SW bloquant les connexions? Enfin, si c'est un serveur de développement (PHP, Python) qui est lié à 127.0.0.1, les connexions doivent être locales, et échoueront si elles proviennent d'une autre machine ou IF. Est-ce le cas? –
J'ai réussi à dépasser cela. mais maintenant je reçois une erreur de certificat de non-pair. –
Quel type de serveur utilisez-vous? Il semble que votre connexion soit HTTP, sans cryptage SSL/TLS. –