Jakie są różnice, jeśli próbuję połączyć się z "https" przy użyciu HttpURLConnection
i HttpsURLConnection
?Używanie HttpURLConnection i HttpsURLConnection do łączenia się z https?
Udało mi się połączyć z "https" przy użyciu zarówno HttpURLConnection
i HttpsURLConnection
, więc jestem zdezorientowany. Myślałem, że mogę tylko nawiązać połączenie z „https”, jeśli użyłem HttpsURLConnection?
Poniżej znajdują się niektóre z moich pytań:
- Gdybym był w stanie otworzyć połączenie z „https” Korzystanie HttpURLConnection, czy moje połączenie jest nadal w "https" lub staje się "http"?
- Co z weryfikacją certyfikatów? Ponieważ nie miałem żadnych
SSLSocketFactory
iHostnameVerifier
na moimHttpURLConnection
podczas łączenia się z "https", co używamSSLSocketFactory
iHostnameVerifier
? - Czy to oznacza, że ufam wszystkim, bez względu na to, czy certyfikat jest zaufany czy nie?
Dzięki! Próbowałem połączyć się z różnymi stronami https za pomocą Twojego kodu. Domyślnym działaniem SSLSocketFactory jest akceptowanie tylko certyfikatów podpisanych przez CA. Otrzymałem certyfikat sun.security.validator.ValidatorException, gdy próbowałem połączyć się z witryną, której certyfikat jest samopodpisany. Dziękuję za wyjaśnienie! – Arci
Rozumiem, więc jeśli wiesz, że serwer akceptuje tylko identyfikatory URI HTTPS, możesz bezpiecznie użyć 'HttpURLConnection', aby wykonać swoje żądania? – Micro