Класс HttpsURLConnection
public abstract class HttpsURLConnection extends HttpURLConnection
HttpsURLConnection расширяет HttpURLConnection с поддержкой функций, специфичных для протокола HTTPS. Дополнительную информацию о спецификации HTTPS см. в http://www.w3.org/pub/WWW/Protocols/ и RFC 2818 .
Этот класс использует HostnameVerifier и SSLSocketFactory. Для обоих классов определены реализации по умолчанию. Однако реализации могут быть заменены на уровне класса (статически) или на уровне экземпляра. Все новые экземпляры HttpsURLConnection будут получать статические значения по умолчанию при создании, но их можно переопределить, вызвав соответствующие методы установки на уровне экземпляра до connect.
- С момента:
- 1.4
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected HostnameVerifier |
hostnameVerifier |
hostnameVerifier для этого объекта. |
Поля, объявленные в классе java.net.HttpURLConnection
chunkLength, fixedContentLength, fixedContentLengthLong, HTTP_ACCEPTED, HTTP_BAD_GATEWAY, HTTP_BAD_METHOD, HTTP_BAD_REQUEST, HTTP_CLIENT_TIMEOUT, HTTP_CONFLICT, HTTP_CREATED, HTTP_ENTITY_TOO_LARGE, HTTP_FORBIDDEN, HTTP_GATEWAY_TIMEOUT, HTTP_GONE, HTTP_INTERNAL_ERROR, HTTP_LENGTH_REQUIRED, HTTP_MOVED_PERM, HTTP_MOVED_TEMP, HTTP_MULT_CHOICE, HTTP_NO_CONTENT, HTTP_NOT_ACCEPTABLE, HTTP_NOT_AUTHORITATIVE, HTTP_NOT_FOUND, HTTP_NOT_IMPLEMENTED, HTTP_NOT_MODIFIED, HTTP_OK, HTTP_PARTIAL, HTTP_PAYMENT_REQUIRED, HTTP_PRECON_FAILED, HTTP_PROXY_AUTH, HTTP_REQ_TOO_LONG, HTTP_RESET, HTTP_SEE_OTHER, HTTP_SERVER_ERROR, HTTP_UNAUTHORIZED, HTTP_UNAVAILABLE, HTTP_UNSUPPORTED_TYPE, HTTP_USE_PROXY, HTTP_VERSION, instanceFollowRedirects, method, responseCode, responseMessage
Поля, объявленные в классе java.net.URLConnection
allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создаёт HttpsURLConnection с использованием указанного URL. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract String |
getCipherSuite() |
Возвращает используемый набор шифров в этом соединении. |
static HostnameVerifier |
getDefaultHostnameVerifier() |
Возвращает значение по умолчанию HostnameVerifier, унаследованное новыми экземплярами этого класса. |
static SSLSocketFactory |
getDefaultSSLSocketFactory() |
Возвращает значение по умолчанию SSLSocketFactory, унаследованное новыми экземплярами этого класса. |
HostnameVerifier |
getHostnameVerifier() |
Возвращает HostnameVerifier в этом экземпляре. |
abstract Certificate[] |
getLocalCertificates() |
Возвращает сертификат(ы), отправленный серверу во время рукопожатия. |
Principal |
getLocalPrincipal() |
Возвращает субъект, отправленный серверу во время рукопожатия. |
Principal |
getPeerPrincipal() |
Возвращает субъект сервера, установленный в ходе определения сеанса. |
abstract Certificate[] |
getServerCertificates() |
Возвращает цепочку сертификатов сервера, установленную в ходе определения сеанса. |
Optional |
getSSLSession() |
Возвращает Optional содержащий SSLSession в этом соединении. |
SSLSocketFactory |
getSSLSocketFactory() |
Возвращает фабрику сокетов SSL, которая будет использоваться при создании сокетов для безопасных подключений HTTPS URL. |
static void |
setDefaultHostnameVerifier |
Устанавливает значение по умолчанию HostnameVerifier, унаследованное новым экземпляром этого класса. |
static void |
setDefaultSSLSocketFactory |
Устанавливает значение по умолчанию SSLSocketFactory, унаследованное новыми экземплярами этого класса. |
void |
setHostnameVerifier |
Устанавливает HostnameVerifier для этого экземпляра. |
void |
setSSLSocketFactory |
Устанавливает SSLSocketFactory, который будет использоваться при создании сокетов для безопасных подключений HTTPS URL в этом экземпляре. |
Методы, объявленные в классе java.net.HttpURLConnection
disconnect, getErrorStream, getFollowRedirects, getHeaderField, getHeaderFieldKey, getInstanceFollowRedirects, getPermission, getRequestMethod, getResponseCode, getResponseMessage, setAuthenticator, setChunkedStreamingMode, setFixedLengthStreamingMode, setFixedLengthStreamingMode, setFollowRedirects, setInstanceFollowRedirects, setRequestMethod, usingProxy
Методы, объявленные в классе java.net.URLConnection
addRequestProperty, connect, getAllowUserInteraction, getConnectTimeout, getContent, getContent, getContentEncoding, getContentLength, getContentLengthLong, getContentType, getDate, getDefaultAllowUserInteraction, getDefaultRequestProperty, getDefaultUseCaches, getDefaultUseCaches, getDoInput, getDoOutput, getExpiration, getFileNameMap, getHeaderField, getHeaderFieldDate, getHeaderFieldInt, getHeaderFieldLong, getHeaderFields, getIfModifiedSince, getInputStream, getLastModified, getOutputStream, getReadTimeout, getRequestProperties, getRequestProperty, getURL, getUseCaches, guessContentTypeFromName, guessContentTypeFromStream, setAllowUserInteraction, setConnectTimeout, setContentHandlerFactory, setDefaultAllowUserInteraction, setDefaultRequestProperty, setDefaultUseCaches, setDefaultUseCaches, setDoInput, setDoOutput, setFileNameMap, setIfModifiedSince, setReadTimeout, setRequestProperty, setUseCaches, toString
Подробное описание полей
hostnameVerifier
protected HostnameVerifier hostnameVerifier
Подробное описание конструкторов
HttpsURLConnection
protected HttpsURLConnection(URL url)
- Параметры:
-
url- URL
Подробное описание методов
getCipherSuite
public abstract String getCipherSuite()
- Возвращает:
- используемый шифр
- Исключения:
-
IllegalStateException- если метод вызван до установления соединения.
getLocalCertificates
public abstract Certificate[] getLocalCertificates()
Примечание: Этот метод полезен только при использовании сертификат-ориентированных шифров.
Когда доступно несколько сертификатов для использования при рукопожатии, реализация выбирает, что она считает «лучшей» цепочкой сертификатов, доступной, и передает её на другую сторону. Этот метод позволяет вызывающему методу узнать, какая цепочка сертификатов была фактически отправлена.
- Возвращает:
- упорядоченный массив сертификатов, где сертификат клиента стоит первым, а затем все сертификаты авторитетных центров. Если не было отправлено сертификатов, то возвращается null.
- Исключения:
-
IllegalStateException- если метод вызван до установления соединения. - См. также:
getServerCertificates
public abstract Certificate[] getServerCertificates() throws SSLPeerUnverifiedException
Примечание: Этот метод может использоваться только при использовании сертификат-ориентированных шифров; его использование с не-сертификат-ориентированными шифрами, такими как Kerberos, вызовет SSLPeerUnverifiedException.
Примечание: Возвращаемое значение может не являться правильной цепочкой сертификатов и не должно использоваться для принятия решений о доверии.
- Возвращает:
- упорядоченный массив сертификатов сервера, где сертификат сервера стоит первым, а затем все сертификаты авторитетных центров.
- Исключения:
-
SSLPeerUnverifiedException- если сервер не был проверен. -
IllegalStateException- если метод вызван до установления соединения. - См. также:
getPeerPrincipal
public Principal getPeerPrincipal() throws SSLPeerUnverifiedException
Примечание: Подклассы должны переопределять этот метод. Если метод не переопределен, он по умолчанию вернёт X500Principal сертификата конечного узла сервера для сертификат-ориентированных шифров или вызовет SSLPeerUnverifiedException для не-сертификат-ориентированных шифров, таких как Kerberos.
- Возвращает:
- имя сервера. Возвращает X500Principal для сертификата конечного узла для X509-ориентированных шифров и KerberosPrincipal для шифров Kerberos.
- Исключения:
-
SSLPeerUnverifiedException- если сервер не был проверен -
IllegalStateException- если метод вызван до установления соединения. - С:
- 1.5
- См. также:
getLocalPrincipal
public Principal getLocalPrincipal()
Примечание: Подклассы должны переопределять этот метод. Если метод не переопределен, он по умолчанию вернёт X500Principal сертификата конечного узла, который был отправлен серверу для сертификат-ориентированных шифров, или вернёт null для не-сертификат-ориентированных шифров, таких как Kerberos.
- Возвращает:
- имя, отправленное серверу. Возвращает X500Principal для сертификата конечного узла для X509-ориентированных шифров и KerberosPrincipal для шифров Kerberos. Если имя не было отправлено, то возвращается null.
- Исключения:
-
IllegalStateException- если метод вызван до установления соединения. - С:
- 1.5
- См. также:
setDefaultHostnameVerifier
public static void setDefaultHostnameVerifier(HostnameVerifier v)
Если этот метод не вызывается, значение по умолчанию для проверки имени хоста предполагает, что соединение не должно быть разрешено.
- Параметры:
-
v- проверка имени хоста по умолчанию - Исключения:
-
IllegalArgumentException- если параметрHostnameVerifierравен null. -
SecurityException- если менеджер безопасности существует и его методcheckPermissionне разрешает установкуSSLPermission("setHostnameVerifier") - См. также:
getDefaultHostnameVerifier
public static HostnameVerifier getDefaultHostnameVerifier()
- Возвращает:
- проверка имени хоста по умолчанию
- См. также:
setHostnameVerifier
public void setHostnameVerifier(HostnameVerifier v)
Новые экземпляры этого класса наследуют значение по умолчанию для проверки имени хоста, установленного статическим методом setDefaultHostnameVerifier. Вызовы этого метода перезаписывают проверку имени хоста данного объекта.
- Параметры:
-
v- проверка имени хоста - Исключения:
-
IllegalArgumentException- если параметрHostnameVerifierравен null. - См. также:
getHostnameVerifier
public HostnameVerifier getHostnameVerifier()
- Возвращает:
- проверка имени хоста
- См. также:
setDefaultSSLSocketFactory
public static void setDefaultSSLSocketFactory(SSLSocketFactory sf)
Сокет-фабрики используются при создании сокетов для защищённых соединений https.
- Параметры:
-
sf- сокет-фабрика SSL по умолчанию - Исключения:
-
IllegalArgumentException- если параметр SSLSocketFactory равен null. -
SecurityException- если менеджер безопасности существует и его методcheckSetFactoryне разрешает указание сокет-фабрики. - См. также:
getDefaultSSLSocketFactory
public static SSLSocketFactory getDefaultSSLSocketFactory()
Сокет-фабрики используются при создании сокетов для защищённых соединений https.
- Возвращает:
- сокет-фабрика SSL по умолчанию
- См. также:
setSSLSocketFactory
public void setSSLSocketFactory(SSLSocketFactory sf)
Новые экземпляры этого класса наследуют значение по умолчанию для фабрики SSL сокетов, установленной статическим методом setDefaultSSLSocketFactory. Вызовы этого метода перезаписывают фабрику SSL сокетов данного объекта.
- Параметры:
-
sf- фабрика SSL сокетов - Исключения:
-
IllegalArgumentException- если параметрSSLSocketFactoryравен null. -
SecurityException- если менеджер безопасности существует и его методcheckSetFactoryне разрешает указание сокет-фабрики. - См. также:
getSSLSocketFactory
public SSLSocketFactory getSSLSocketFactory()
- Возвращает:
- фабрика SSL сокетов
- См. также:
getSSLSession
public Optional<SSLSession> getSSLSession()
Optional, содержащий SSLSession , используемый в этом соединении. Возвращает пустой Optional , если реализация по умолчанию не поддерживает этот метод.- Требования к реализации:
- Для совместимости, по умолчанию этот метод возвращает пустой
Optional. Подклассы должны переопределить этот метод соответствующей реализацией, так как приложение может потребоваться получить доступ к дополнительным параметрам, связанным с сессией SSL. - Возвращает:
Optional, содержащийSSLSession, используемый в этом соединении.- Исключение:
-
IllegalStateException- если этот метод вызывается до установления соединения - С:
- 12
- См. также:
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/javax/net/ssl/HttpsURLConnection.html