我試圖通過Android客戶端打的HTTPS站點:Android HttpURLConnection-最簡單的方法來信任所有主機?
URL url = new URL(myurl);
Log.d("Connection", myurl);
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
conn.setReadTimeout(10000 /* milliseconds */);
conn.setConnectTimeout(15000 /* milliseconds */);
conn.addRequestProperty("Content-Type", "application/json");
conn.setRequestMethod("POST");
conn.setDoInput(true);
// Starts the query
Log.d("Connection", "Connecting...");
conn.connect();
的connect
調用拋出異常:
javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
編輯:我告訴該網站使用的是自簽名的證書,因爲這只是一個原型,我只需要信任所有的主機,所以它會工作。有人能指出我這樣做的一個簡單例子嗎?我在網上看到的代碼變得相當複雜,我只想做一個hacky繞過任何驗證。
我會檢查出來的,但是憑據是相同的我在iOS上使用 – Adam