HttpsURLConnection을 사용하여 HTTPS 요청을하고 있습니다.HTTPS 요청을 수행하는 동안 신뢰할 수없는 인증서 예외에 대응하는 방법?
연락하려는 서버에 자체 서명 인증서가있어 논리적으로 요청이 실패하게됩니다.
그러나 실패로 인해 내 프로그램에 신호가 보내지지 않습니다. 그냥 실패하고 나는 logcat에서 왜 볼 수 있습니다. 인증서를 신뢰할 가능성이되지 않음을 나타내는 대화 상자가 팝업 : 내가 않는 브라우저처럼 반응하는 내 프로그램 싶습니다, 이상적으로
HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
connection.setUseCaches(false);
connection.setAllowUserInteraction(false);
connection.connect();
: 여기
03-22 17:54:35.203: W/System.err(21147): javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
03-22 17:54:35.203: W/System.err(21147): at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:381)
내가 요청에 사용하는 코드입니다 일부 키 저장소에 추가하고 요청을 다시 시도하십시오.
하지만 예외를 얻는 방법을 알 수 없으므로 여기서는 무엇을 해야할지 잘 모릅니다.
단서가 있습니까?
의 유효성을 검사하는 사용자 정의
TrustManager
을 설정에 대해 설명하고있다? http://stackoverflow.com/questions/2012497/accepting-a-certificate-for-https-on-android?rq=1 – petey