Класс HttpURLConnection
- Прямые известные подклассы:
HttpsURLConnection
public abstract class HttpURLConnection extends URLConnection
Каждый экземпляр HttpURLConnection используется для выполнения одного запроса, однако базовое сетевое подключение к HTTP-серверу может прозрачно совместно использоваться другими экземплярами. Вызов методов close() для InputStream или OutputStream объекта HttpURLConnection после запроса может освободить сетевые ресурсы, связанные с этим экземпляром, но не влияет на совместное постоянное соединение. Вызов метода disconnect() может закрыть базовый сокет, если в этот момент постоянное соединение не используется.
Обработчик протокола HTTP имеет несколько параметров, доступных через системные свойства. К ним относятся параметры прокси-сервера, а также различные другие параметры.
- С версии:
- 1.1
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected int |
chunkLength |
Длина блока при использовании режима потоковой передачи с блочным кодированием для вывода. |
protected int |
fixedContentLength |
Фиксированная длина содержимого при использовании режима потоковой передачи с фиксированной длиной. |
protected long |
fixedContentLengthLong |
Фиксированная длина содержимого при использовании режима потоковой передачи с фиксированной длиной. |
static final int |
HTTP_ACCEPTED |
Код состояния HTTP 202: принято. |
static final int |
HTTP_BAD_GATEWAY |
Код состояния HTTP 502: ошибка шлюза. |
static final int |
HTTP_BAD_METHOD |
Код состояния HTTP 405: метод не разрешён. |
static final int |
HTTP_BAD_REQUEST |
Код состояния HTTP 400: неверный запрос. |
static final int |
HTTP_CLIENT_TIMEOUT |
Код состояния HTTP 408: время ожидания запроса истекло. |
static final int |
HTTP_CONFLICT |
Код состояния HTTP 409: конфликт. |
static final int |
HTTP_CREATED |
Код состояния HTTP 201: создано. |
static final int |
HTTP_ENTITY_TOO_LARGE |
Код состояния HTTP 413: объект запроса слишком велик. |
static final int |
HTTP_FORBIDDEN |
Код состояния HTTP 403: доступ запрещён. |
static final int |
HTTP_GATEWAY_TIMEOUT |
Код состояния HTTP 504: время ожидания шлюза истекло. |
static final int |
HTTP_GONE |
Код состояния HTTP 410: ресурс удалён. |
static final int |
HTTP_INTERNAL_ERROR |
Код состояния HTTP 500: внутренняя ошибка сервера. |
static final int |
HTTP_LENGTH_REQUIRED |
Код состояния HTTP 411: требуется указать длину. |
static final int |
HTTP_MOVED_PERM |
Код состояния HTTP 301: перемещено навсегда. |
static final int |
HTTP_MOVED_TEMP |
Код состояния HTTP 302: временное перенаправление. |
static final int |
HTTP_MULT_CHOICE |
Код состояния HTTP 300: несколько вариантов. |
static final int |
HTTP_NO_CONTENT |
Код состояния HTTP 204: нет содержимого. |
static final int |
HTTP_NOT_ACCEPTABLE |
Код состояния HTTP 406: неприемлемо. |
static final int |
HTTP_NOT_AUTHORITATIVE |
Код состояния HTTP 203: информация не является авторитетной. |
static final int |
HTTP_NOT_FOUND |
Код состояния HTTP 404: не найдено. |
static final int |
HTTP_NOT_IMPLEMENTED |
Код состояния HTTP 501: не реализовано. |
static final int |
HTTP_NOT_MODIFIED |
Код состояния HTTP 304: не изменено. |
static final int |
HTTP_OK |
Код состояния HTTP 200: успешно. |
static final int |
HTTP_PARTIAL |
Код состояния HTTP 206: частичное содержимое. |
static final int |
HTTP_PAYMENT_REQUIRED |
Код состояния HTTP 402: требуется оплата. |
static final int |
HTTP_PRECON_FAILED |
Код состояния HTTP 412: условие не выполнено. |
static final int |
HTTP_PROXY_AUTH |
Код состояния HTTP 407: требуется аутентификация на прокси-сервере. |
static final int |
HTTP_REQ_TOO_LONG |
Код состояния HTTP 414: URI запроса слишком длинный. |
static final int |
HTTP_RESET |
Код состояния HTTP 205: содержимое сброшено. |
static final int |
HTTP_SEE_OTHER |
Код состояния HTTP 303: см. другой ресурс. |
static final int |
HTTP_SERVER_ERROR |
Устарело. Поле размещено не на своём месте и не должно было существовать. |
static final int |
HTTP_UNAUTHORIZED |
Код состояния HTTP 401: не авторизовано. |
static final int |
HTTP_UNAVAILABLE |
Код состояния HTTP 503: служба недоступна. |
static final int |
HTTP_UNSUPPORTED_TYPE |
Код состояния HTTP 415: неподдерживаемый тип данных. |
static final int |
HTTP_USE_PROXY |
Код состояния HTTP 305: используйте прокси-сервер. |
static final int |
HTTP_VERSION |
Код состояния HTTP 505: версия HTTP не поддерживается. |
protected boolean |
instanceFollowRedirects |
Если true, протокол будет автоматически следовать перенаправлениям. |
protected String |
method |
Метод HTTP (GET,POST,PUT и т. д.). |
protected int |
responseCode |
int, представляющее трёхзначный код состояния HTTP. |
protected String |
responseMessage |
Сообщение ответа HTTP. |
Поля, объявленные в классе URLConnection
allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches | Модификатор и тип | Поле | Описание |
|---|---|---|
protected boolean |
allowUserInteraction |
Если true, этот URL рассматривается в контексте, в котором допустимо взаимодействие с пользователем, например отображение диалогового окна аутентификации. |
protected boolean |
connected |
Если false, этот объект соединения ещё не создал канал связи с указанным URL. |
protected boolean |
doInput |
Эта переменная задаётся методом setDoInput. |
protected boolean |
doOutput |
Эта переменная задаётся методом setDoOutput. |
protected long |
ifModifiedSince |
Некоторые протоколы поддерживают пропуск получения объекта, если объект не изменялся после определённого момента времени. |
protected URL |
url |
URL представляет удалённый объект во Всемирной паутине, с которым устанавливается это соединение. |
protected boolean |
useCaches |
Если true, протоколу разрешено использовать кэширование, когда это возможно. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор класса HttpURLConnection. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract void |
disconnect() |
Указывает, что в ближайшем будущем другие запросы к серверу маловероятны. |
InputStream |
getErrorStream() |
Возвращает поток ошибок, если соединение не удалось установить, но сервер всё же отправил полезные данные. |
static boolean |
getFollowRedirects() |
Возвращает boolean, указывающее, должны ли перенаправления HTTP (3xx) выполняться автоматически. |
String |
getHeaderField |
Возвращает значение n-го поля заголовка. |
String |
getHeaderFieldKey |
Возвращает ключ n-го поля заголовка. |
boolean |
getInstanceFollowRedirects() |
Возвращает значение поля instanceFollowRedirects этого HttpURLConnection. |
Permission |
getPermission() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Разрешения больше нельзя использовать для управления доступом к ресурсам, поскольку диспетчер безопасности больше не поддерживается. |
String |
getRequestMethod() |
Возвращает метод запроса. |
int |
getResponseCode() |
Возвращает код состояния из сообщения ответа HTTP. |
String |
getResponseMessage() |
Возвращает сообщение ответа HTTP, если оно было получено от сервера вместе с кодом ответа. |
void |
setAuthenticator |
Предоставляет Authenticator, используемый при запросе аутентификации через протокол HTTP для этого HttpURLConnection. |
void |
setChunkedStreamingMode |
Этот метод включает потоковую передачу тела HTTP-запроса без внутренней буферизации, если длина содержимого заранее не известна. |
void |
setFixedLengthStreamingMode |
Этот метод включает потоковую передачу тела HTTP-запроса без внутренней буферизации, если длина содержимого заранее известна. |
void |
setFixedLengthStreamingMode |
Этот метод включает потоковую передачу тела HTTP-запроса без внутренней буферизации, если длина содержимого заранее известна. |
static void |
setFollowRedirects |
Задаёт, должны ли перенаправления HTTP (запросы с кодом ответа 3xx) автоматически обрабатываться этим классом. |
void |
setInstanceFollowRedirects |
Задаёт, должны ли перенаправления HTTP (запросы с кодом ответа 3xx) автоматически обрабатываться этим экземпляром HttpURLConnection. |
void |
setRequestMethod |
Задаёт метод URL-запроса. Допустимы GET, POST, HEAD, OPTIONS, PUT, DELETE и TRACE с учётом ограничений протокола. |
abstract boolean |
usingProxy() |
Указывает, проходит ли соединение через прокси-сервер. |
Методы, объявленные в классе 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 | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addRequestProperty |
Добавляет общее свойство запроса, заданное парой ключ-значение. |
abstract void |
connect() |
Открывает канал связи с ресурсом, на который указывает этот URL, если такое соединение ещё не установлено. |
boolean |
getAllowUserInteraction() |
Возвращает значение поля allowUserInteraction этого объекта. |
int |
getConnectTimeout() |
Возвращает значение времени ожидания подключения. |
Object |
getContent() |
Получает содержимое этого URL-соединения. |
Object |
getContent |
Получает содержимое этого URL-соединения. |
String |
getContentEncoding() |
Возвращает значение поля заголовка content-encoding. |
int |
getContentLength() |
Возвращает значение поля заголовка content-length. |
long |
getContentLengthLong() |
Возвращает значение поля заголовка content-length в виде long. |
String |
getContentType() |
Возвращает значение поля заголовка content-type. |
long |
getDate() |
Возвращает значение поля заголовка date. |
static boolean |
getDefaultAllowUserInteraction() |
Возвращает значение поля allowUserInteraction по умолчанию. |
static String |
getDefaultRequestProperty |
Устарело. После получения соответствующего экземпляра URLConnection следует использовать метод getRequestProperty, относящийся к конкретному экземпляру. |
boolean |
getDefaultUseCaches() |
Возвращает значение флага useCaches объекта URLConnection по умолчанию. |
static boolean |
getDefaultUseCaches |
Возвращает значение флага useCaches по умолчанию для указанного протокола. |
boolean |
getDoInput() |
Возвращает значение флага doInput этого URLConnection. |
boolean |
getDoOutput() |
Возвращает значение флага doOutput этого URLConnection. |
long |
getExpiration() |
Возвращает значение поля заголовка expires. |
static FileNameMap |
getFileNameMap() |
Загружает карту имён файлов (таблицу MIME-типов) из файла данных. |
String |
getHeaderField |
Возвращает значение указанного поля заголовка. |
long |
getHeaderFieldDate |
Возвращает значение указанного поля, преобразованное в дату. |
int |
getHeaderFieldInt |
Возвращает значение указанного поля, преобразованное в число. |
long |
getHeaderFieldLong |
Возвращает значение указанного поля, преобразованное в число. |
Map |
getHeaderFields() |
Возвращает неизменяемую карту полей заголовка. |
long |
getIfModifiedSince() |
Возвращает значение поля ifModifiedSince этого объекта. |
InputStream |
getInputStream() |
Возвращает входной поток для чтения из этого открытого соединения. |
long |
getLastModified() |
Возвращает значение поля заголовка last-modified. |
OutputStream |
getOutputStream() |
Возвращает выходной поток для записи в это соединение. |
int |
getReadTimeout() |
Возвращает значение времени ожидания чтения. Возвращаемое значение 0 означает, что параметр отключён (то есть время ожидания не ограничено). |
Map |
getRequestProperties() |
Возвращает неизменяемую карту общих свойств запроса для этого соединения. |
String |
getRequestProperty |
Возвращает значение указанного общего свойства запроса для этого соединения. |
URL |
getURL() |
Возвращает значение поля URL этого URLConnection. |
boolean |
getUseCaches() |
Возвращает значение поля useCaches этого URLConnection. |
static String |
guessContentTypeFromName |
Пытается определить тип содержимого объекта на основе компонента URL, содержащего имя файла. |
static String |
guessContentTypeFromStream |
Пытается определить тип входного потока на основе символов в его начале. |
void |
setAllowUserInteraction |
Задаёт значение поля allowUserInteraction этого URLConnection. |
void |
setConnectTimeout |
Задаёт время ожидания в миллисекундах, используемое при открытии канала связи с ресурсом, на который указывает этот URLConnection. |
static void |
setContentHandlerFactory |
Задаёт ContentHandlerFactory приложения. |
static void |
setDefaultAllowUserInteraction |
Задаёт указанное значение по умолчанию для поля allowUserInteraction всех будущих объектов URLConnection. |
static void |
setDefaultRequestProperty |
Устарело. После получения соответствующего экземпляра URLConnection следует использовать метод setRequestProperty, относящийся к конкретному экземпляру. |
void |
setDefaultUseCaches |
Задаёт для поля useCaches указанное значение по умолчанию. |
static void |
setDefaultUseCaches |
Задаёт указанное значение по умолчанию для поля useCaches именованного протокола. |
void |
setDoInput |
Задаёт указанное значение поля doInput для этого URLConnection. |
void |
setDoOutput |
Задаёт указанное значение поля doOutput для этого URLConnection. |
static void |
setFileNameMap |
Задаёт FileNameMap. |
void |
setIfModifiedSince |
Задаёт указанное значение поля ifModifiedSince этого URLConnection. |
void |
setReadTimeout |
Задаёт время ожидания чтения в миллисекундах. |
void |
setRequestProperty |
Задаёт общее свойство запроса. |
void |
setUseCaches |
Задаёт указанное значение поля useCaches этого URLConnection. |
String |
toString() |
Возвращает представление этого URL-соединения в виде String. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли какой-либо другой объект этому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация устарела и может быть удалена в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание полей
method
protected String method
chunkLength
protected int chunkLength
-1 означает, что кодирование фрагментами для вывода отключено.- Начиная с:
- 1.5
fixedContentLength
protected int fixedContentLength
-1 означает, что потоковый режим с фиксированной длиной для вывода отключен. ПРИМЕЧАНИЕ: Вместо этого поля рекомендуется использовать fixedContentLengthLong, поскольку оно позволяет задавать большую длину содержимого.
- Начиная с:
- 1.5
fixedContentLengthLong
protected long fixedContentLengthLong
-1 означает, что потоковый режим с фиксированной длиной для вывода отключен.- Начиная с:
- 1.7
responseCode
protected int responseCode
int, представляющее трехзначный код состояния HTTP. - 1xx: Информационные
- 2xx: Успешное выполнение
- 3xx: Перенаправление
- 4xx: Ошибка клиента
- 5xx: Ошибка сервера
responseMessage
protected String responseMessage
instanceFollowRedirects
protected boolean instanceFollowRedirects
true, протокол будет автоматически следовать перенаправлениям. Если false, протокол не будет автоматически следовать перенаправлениям. Это поле задается методом setInstanceFollowRedirects. Его значение возвращается методом getInstanceFollowRedirects.
Значение по умолчанию определяется значением статического поля followRedirects на момент создания HttpURLConnection.
- См. также:
HTTP_OK
public static final int HTTP_OK
- См. также:
HTTP_CREATED
public static final int HTTP_CREATED
- См. также:
HTTP_ACCEPTED
public static final int HTTP_ACCEPTED
- См. также:
HTTP_NOT_AUTHORITATIVE
public static final int HTTP_NOT_AUTHORITATIVE
- См. также:
HTTP_NO_CONTENT
public static final int HTTP_NO_CONTENT
- См. также:
HTTP_RESET
public static final int HTTP_RESET
- См. также:
HTTP_PARTIAL
public static final int HTTP_PARTIAL
- См. также:
HTTP_MULT_CHOICE
public static final int HTTP_MULT_CHOICE
- См. также:
HTTP_MOVED_PERM
public static final int HTTP_MOVED_PERM
- См. также:
HTTP_MOVED_TEMP
public static final int HTTP_MOVED_TEMP
- См. также:
HTTP_SEE_OTHER
public static final int HTTP_SEE_OTHER
- См. также:
HTTP_NOT_MODIFIED
public static final int HTTP_NOT_MODIFIED
- См. также:
HTTP_USE_PROXY
public static final int HTTP_USE_PROXY
- См. также:
HTTP_BAD_REQUEST
public static final int HTTP_BAD_REQUEST
- См. также:
HTTP_UNAUTHORIZED
public static final int HTTP_UNAUTHORIZED
- См. также:
HTTP_PAYMENT_REQUIRED
public static final int HTTP_PAYMENT_REQUIRED
- См. также:
HTTP_FORBIDDEN
public static final int HTTP_FORBIDDEN
- См. также:
HTTP_NOT_FOUND
public static final int HTTP_NOT_FOUND
- См. также:
HTTP_BAD_METHOD
public static final int HTTP_BAD_METHOD
- См. также:
HTTP_NOT_ACCEPTABLE
public static final int HTTP_NOT_ACCEPTABLE
- См. также:
HTTP_PROXY_AUTH
public static final int HTTP_PROXY_AUTH
- См. также:
HTTP_CLIENT_TIMEOUT
public static final int HTTP_CLIENT_TIMEOUT
- См. также:
HTTP_CONFLICT
public static final int HTTP_CONFLICT
- См. также:
HTTP_GONE
public static final int HTTP_GONE
- См. также:
HTTP_LENGTH_REQUIRED
public static final int HTTP_LENGTH_REQUIRED
- См. также:
HTTP_PRECON_FAILED
public static final int HTTP_PRECON_FAILED
- См. также:
HTTP_ENTITY_TOO_LARGE
public static final int HTTP_ENTITY_TOO_LARGE
- См. также:
HTTP_REQ_TOO_LONG
public static final int HTTP_REQ_TOO_LONG
- См. также:
HTTP_UNSUPPORTED_TYPE
public static final int HTTP_UNSUPPORTED_TYPE
- См. также:
HTTP_SERVER_ERROR
@Deprecated public static final int HTTP_SERVER_ERROR
- См. также:
HTTP_INTERNAL_ERROR
public static final int HTTP_INTERNAL_ERROR
- См. также:
HTTP_NOT_IMPLEMENTED
public static final int HTTP_NOT_IMPLEMENTED
- См. также:
HTTP_BAD_GATEWAY
public static final int HTTP_BAD_GATEWAY
- См. также:
HTTP_UNAVAILABLE
public static final int HTTP_UNAVAILABLE
- См. также:
HTTP_GATEWAY_TIMEOUT
public static final int HTTP_GATEWAY_TIMEOUT
- См. также:
HTTP_VERSION
public static final int HTTP_VERSION
- См. также:
Подробное описание конструкторов
HttpURLConnection
protected HttpURLConnection(URL u)
- Параметры:
-
u— URL
Подробное описание методов
setAuthenticator
public void setAuthenticator(Authenticator auth)
Authenticator, который будет использоваться при запросе аутентификации по протоколу HTTP для этого HttpURLConnection. Если аутентификатор не предоставлен, будет использоваться аутентификатор по умолчанию.- Требования к реализации:
- Поведение этого метода по умолчанию заключается в безусловном выбрасывании
UnsupportedOperationException. Конкретные реализацииHttpURLConnection, поддерживающие предоставлениеAuthenticatorдля отдельного экземпляраHttpURLConnection, должны переопределить этот метод, чтобы реализовать другое поведение. - Примечание по реализации:
- В зависимости от схем аутентификации реализация может использовать или не использовать предоставленный аутентификатор для получения пароля. Например, реализация, использующая сторонние библиотеки безопасности, может по-прежнему вызывать аутентификатор по умолчанию, если эти библиотеки настроены на такое поведение. Аналогично, реализация, поддерживающая прозрачную аутентификацию NTLM, может сначала позволить системе попробовать подключиться с учетными данными системного пользователя и только затем вызвать предоставленный аутентификатор.
Однако, если аутентификатор предоставлен явно, базовое соединение может повторно использоваться только для экземпляровHttpURLConnection, использующих один и тот же экземплярAuthenticator, а сведения об аутентификации, если они кэшируются, могут повторно использоваться только дляHttpURLConnection, использующих тот жеAuthenticator. - Параметры:
-
auth—Authenticator, который должен использоваться этимHttpURLConnection. - Исключения:
-
UnsupportedOperationException— если базовая реализация не поддерживает установку Authenticator. -
IllegalStateException— если URLConnection уже подключен. -
NullPointerException— если предоставленныйauthимеет значениеnull. - Начиная с:
- 9
getHeaderFieldKey
public String getHeaderFieldKey(int n)
n-го поля заголовка. Некоторые реализации могут считать 0-е поле заголовка специальным, то есть строкой состояния, возвращаемой HTTP-сервером. В таком случае метод getHeaderField(0) возвращает строку состояния, а getHeaderFieldKey(0) возвращает null.- Переопределяет:
-
getHeaderFieldKeyв классеURLConnection - Параметры:
-
n— индекс, гдеn >=0. - Возвращает:
- ключ
n-го поля заголовка илиnull, если ключ не существует.
setFixedLengthStreamingMode
public void setFixedLengthStreamingMode(int contentLength)
Будет выброшено исключение, если приложение попытается записать больше данных, чем указано в длине содержимого, или если приложение закроет OutputStream, не записав указанное количество данных.
При включенной потоковой передаче вывода автоматическая обработка аутентификации и перенаправлений невозможна. При чтении ответа будет выброшено исключение HttpRetryException, если требуется аутентификация или перенаправление. Это исключение можно запросить для получения сведений об ошибке.
Этот метод необходимо вызвать до подключения URLConnection.
ПРИМЕЧАНИЕ: Вместо этого метода рекомендуется использовать setFixedLengthStreamingMode(long), поскольку он позволяет задавать большую длину содержимого.
- Параметры:
-
contentLength— количество байтов, которые будут записаны в OutputStream. - Исключения:
-
IllegalStateException— если URLConnection уже подключен или уже включен другой режим потоковой передачи. -
IllegalArgumentException— если указана длина содержимого меньше нуля. - Начиная с:
- 1.5
- См. также:
setFixedLengthStreamingMode
public void setFixedLengthStreamingMode(long contentLength)
Будет выброшено исключение, если приложение попытается записать больше данных, чем указано в длине содержимого, или если приложение закроет OutputStream, не записав указанное количество данных.
При включенной потоковой передаче вывода автоматическая обработка аутентификации и перенаправлений невозможна. При чтении ответа будет выброшено исключение HttpRetryException, если требуется аутентификация или перенаправление. Это исключение можно запросить для получения сведений об ошибке.
Этот метод необходимо вызвать до подключения URLConnection.
Длина содержимого, заданная вызовом этого метода, имеет приоритет над любым значением, заданным методом setFixedLengthStreamingMode(int).
- Параметры:
-
contentLength— количество байтов, которые будут записаны в OutputStream. - Исключения:
-
IllegalStateException— если URLConnection уже подключен или уже включен другой режим потоковой передачи. -
IllegalArgumentException— если указана длина содержимого меньше нуля. - Начиная с:
- 1.7
setChunkedStreamingMode
public void setChunkedStreamingMode(int chunklen)
При включенной потоковой передаче вывода автоматическая обработка аутентификации и перенаправлений невозможна. При чтении ответа будет выброшено исключение HttpRetryException, если требуется аутентификация или перенаправление. Это исключение можно запросить для получения сведений об ошибке.
Этот метод необходимо вызвать до подключения URLConnection.
- Параметры:
-
chunklen— количество байтов в каждом фрагменте, включая заголовок размера фрагмента в виде шестнадцатеричной строки (минимум 1 байт), два CRLF (4 байта) и полезную нагрузку длиной не менее 1 байта. Если chunklen меньше или равен 5, будет использовано большее значение по умолчанию. - Исключения:
-
IllegalStateException— если URLConnection уже подключен или уже включен другой режим потоковой передачи. - Начиная с:
- 1.5
- См. также:
getHeaderField
public String getHeaderField(int n)
n-го поля заголовка. Некоторые реализации могут считать 0-е поле заголовка специальным, то есть строкой состояния, возвращаемой HTTP-сервером. Этот метод можно использовать совместно с методом getHeaderFieldKey для перебора всех заголовков сообщения.
- Переопределяет:
-
getHeaderFieldв классеURLConnection - Параметры:
-
n— индекс, гдеn>=0. - Возвращает:
- значение
n-го поля заголовка илиnull, если значение не существует. - См. также:
setFollowRedirects
public static void setFollowRedirects(boolean set)
- Параметры:
-
set—boolean, указывающее, следует ли переходить по перенаправлениям HTTP. - См. также:
getFollowRedirects
public static boolean getFollowRedirects()
boolean, указывающее, следует ли автоматически переходить по перенаправлениям HTTP (3xx).- Возвращает:
-
true, если следует автоматически переходить по перенаправлениям HTTP, иfalseв противном случае. - См. также:
setInstanceFollowRedirects
public void setInstanceFollowRedirects(boolean followRedirects)
HttpURLConnection автоматически переходить по перенаправлениям HTTP (запросам с кодом ответа 3xx). Значение по умолчанию берется из followRedirects, значение которого по умолчанию — true.
- Параметры:
-
followRedirects—boolean, указывающее, следует ли переходить по перенаправлениям HTTP. - Начиная с:
- 1.3
- См. также:
getInstanceFollowRedirects
public boolean getInstanceFollowRedirects()
instanceFollowRedirects этого HttpURLConnection.- Возвращает:
- значение поля
instanceFollowRedirectsэтогоHttpURLConnection. - Начиная с:
- 1.3
- См. также:
setRequestMethod
public void setRequestMethod(String method) throws ProtocolException
- GET
- POST
- HEAD
- OPTIONS
- PUT
- DELETE
- TRACE
- Параметры:
-
method— метод HTTP - Исключения:
-
ProtocolException— если метод нельзя сбросить или запрошенный метод недопустим для HTTP. - См. также:
getRequestMethod
public String getRequestMethod()
- Возвращает:
- метод HTTP-запроса
- См. также:
getResponseCode
public int getResponseCode() throws IOException
HTTP/1.0 200 OK HTTP/1.0 401 Unauthorizedбудут возвращены соответственно 200 и 401. Возвращает -1, если код не удалось определить по ответу (то есть ответ не является допустимым HTTP-ответом).
- Возвращает:
- код состояния HTTP или -1
- Исключения:
-
IOException— если при подключении к серверу произошла ошибка.
getResponseMessage
public String getResponseMessage() throws IOException
HTTP/1.0 200 OK HTTP/1.0 404 Not Foundизвлекаются строки «OK» и «Not Found» соответственно. Возвращает null, если сообщение не удалось определить по ответам (результат не является допустимым HTTP-ответом).
- Возвращает:
- сообщение HTTP-ответа или
null - Исключения:
-
IOException— если при подключении к серверу произошла ошибка.
disconnect
public abstract void disconnect()
usingProxy
public abstract boolean usingProxy()
true, если известно, что соединение проходит или проходило через прокси-серверы, и возвращает false, если соединение никогда не будет проходить через прокси-сервер или использование прокси-сервера определить невозможно.- Возвращает:
- логическое значение, указывающее, использует ли соединение прокси-сервер.
getPermission
@Deprecated(since="25", forRemoval=true) public Permission getPermission() throws IOException
SocketPermission, представляющий разрешение, необходимое для подключения к целевому узлу и порту.- Переопределяет:
-
getPermissionв классеURLConnection - Возвращает:
- объект
SocketPermission, представляющий разрешение, необходимое для подключения к целевому узлу и порту. - Исключения:
-
IOException— если при вычислении разрешения произошла ошибка.
getErrorStream
public InputStream getErrorStream()
Этот метод не инициирует установление соединения. Если соединение не было установлено, если при подключении не возникла ошибка на сервере или если ошибка возникла, но данные об ошибке не были отправлены, метод вернёт null. Это поведение по умолчанию.
- Возвращает:
- поток ошибок, если он есть; null, если ошибок не было, соединение не установлено или сервер не отправил полезные данные.
© 1993, 2025, 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.