> Java > java지도 시간 > Android에서 확인되지 않은 HTTPS 연결을 어떻게 처리할 수 있나요?

Android에서 확인되지 않은 HTTPS 연결을 어떻게 처리할 수 있나요?

Mary-Kate Olsen
풀어 주다: 2024-12-10 16:46:16
원래의
270명이 탐색했습니다.

How Can I Handle Unverified HTTPS Connections in Android?

Android에서 확인되지 않은 Https 연결

HTTP(S) 요청을 수행할 때 "SSL 예외 신뢰할 수 없는 서버 인증서" 오류가 발생하는 경우 HTTPS를 사용하는 동안 서버 인증서 확인을 처리해야 할 수도 있습니다.

해결책:

인증서 확인을 우회하고 모든 서버를 신뢰하려면 다음 코드를 구현할 수 있습니다.

// Ignore hostname verification
HostnameVerifier DO_NOT_VERIFY = new HostnameVerifier() {
    @Override
    public boolean verify(String hostname, SSLSession session) {
        return true;
    }
};

// Trust all certificates
TrustManager[] trustAllCerts = new TrustManager[] {
    new X509TrustManager() {
        @Override
        public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {}

        @Override
        public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {}

        @Override
        public X509Certificate[] getAcceptedIssuers() {
            return new X509Certificate[] {};
        }
    }
};

// Install the all-trusting trust manager
try {
    SSLContext sc = SSLContext.getInstance("TLS");
    sc.init(null, trustAllCerts, new SecureRandom());
    HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
} catch (Exception e) {
    e.printStackTrace();
}

// Open the connection, setting hostname verification to false and using the custom trust manager
HttpURLConnection http = null;
if (url.getProtocol().toLowerCase().equals("https")) {
    HttpsURLConnection https = (HttpsURLConnection) url.openConnection();
    https.setHostnameVerifier(DO_NOT_VERIFY);
    http = https;
} else {
    http = (HttpURLConnection) url.openConnection();
}
로그인 후 복사

이 코드를 사용하여 , 일반 HTTP 및 HTTPS 연결 모두에서 SSL 인증서 확인을 건너뜁니다.

위 내용은 Android에서 확인되지 않은 HTTPS 연결을 어떻게 처리할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿