Spec-Zone.ru › OpenJDK 21

Класс HttpURLConnection

java.lang.Object
java.net.URLConnection
java.net.HttpURLConnection
Прямые известные подклассы:
HttpsURLConnection
public abstract class HttpURLConnection extends URLConnection
Объект URLConnection с поддержкой функций, специфичных для HTTP. Подробности см. в спецификации.

Каждый экземпляр HttpURLConnection используется для выполнения одного запроса, но базовое сетевое подключение к HTTP-серверу может быть прозрачно разделено между другими экземплярами. Вызов методов close() на потоках InputStream или OutputStream объекта HttpURLConnection после запроса может освободить сетевые ресурсы, связанные с этим экземпляром, но не повлияет на какие-либо общие постоянные подключения. Вызов метода disconnect() может закрыть базовую сокет, если постоянное подключение в противном случае простаивает в этот момент.

Обработчик протокола HTTP имеет несколько настроек, к которым можно получить доступ через системные свойства. Это охватывает настройки прокси, а также различные другие настройки.

Разрешения безопасности

Если установлен менеджер безопасности, и вызывается метод, приводящий к попытке открыть подключение, вызывающий должен обладать либо:

  • «соединением» SocketPermission с комбинацией хост/порт целевого URL, либо
  • разрешением URLPermission, разрешающим этот запрос.

Если автоматическое перенаправление включено, а этот запрос перенаправляется на другой адрес назначения, вызывающий должен также иметь разрешение на подключение к перенаправленному хосту/URL.

С:
1.1
См. также:
  • disconnect()

Краткое описание полей

Модификатор и тип Поле Описание
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: OK.
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: URL-запрос слишком большой.
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-ответа.

Поля, объявленные в классе java.net.URLConnection

allowUserInteraction, connected, doInput, doOutput, ifModifiedSince, url, useCaches

Краткое описание конструкторов

HttpURLConnection(URL u)
Модификатор Конструктор Описание
protected
Конструктор для HttpURLConnection.

Краткое описание методов

Модификатор и тип Метод Описание
abstract void disconnect()
Указывает, что в ближайшее время другие запросы к серверу маловероятны.
InputStream getErrorStream()
Возвращает поток ошибок, если соединение завершилось неудачно, но сервер тем не менее отправил полезные данные.
static boolean getFollowRedirects()
Возвращает значение, указывающее, следует ли автоматически следовать HTTP-перенаправлениям (3xx).
String getHeaderField(int n)
Возвращает значение для поля заголовка.
String getHeaderFieldKey(int n)
Возвращает ключ для поля заголовка.
boolean getInstanceFollowRedirects()
Возвращает значение поля данного объекта.
Permission getPermission()
Возвращает объект SocketPermission, представляющий разрешение, необходимое для подключения к целевому хосту и порту.
String getRequestMethod()
Получить метод запроса.
int getResponseCode()
Получает код состояния из сообщения HTTP-ответа.
String getResponseMessage()
Получает сообщение HTTP-ответа, если оно есть, возвращённое вместе с кодом ответа от сервера.
void setAuthenticator(Authenticator auth)
Предоставляет Authenticator, который будет использоваться при запросе аутентификации через протокол HTTP для этого объекта.
void setChunkedStreamingMode(int chunklen)
Этот метод используется для включения потоковой передачи тела HTTP-запроса без внутренней буферизации, когда длина содержимого заранее не известна.
void setFixedLengthStreamingMode(int contentLength)
Этот метод используется для включения потоковой передачи тела HTTP-запроса без внутренней буферизации, когда длина содержимого известна заранее.
void setFixedLengthStreamingMode(long contentLength)
Этот метод используется для включения потоковой передачи тела HTTP-запроса без внутренней буферизации, когда длина содержимого известна заранее.
static void setFollowRedirects(boolean set)
Устанавливает, следует ли автоматически перенаправлять HTTP-перенаправления (запросы с кодом ответа 3xx) этим классом.
void setInstanceFollowRedirects(boolean followRedirects)
Устанавливает, следует ли автоматически перенаправлять HTTP-перенаправления (запросы с кодом ответа 3xx) этим экземпляром объекта.
void setRequestMethod(String method)
Устанавливает метод для запроса URL, один из: GET POST HEAD OPTIONS PUT DELETE TRACE допустимы, с учётом ограничений протокола.
abstract boolean 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

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание полей

метод

protected String method
Метод HTTP (GET, POST, PUT и т.д.).

chunkLength

protected int chunkLength
Длина фрагмента при использовании потоковой передачи с фрагментацией (chunked encoding) для вывода. Значение -1 означает, что потоковая передача с фрагментацией для вывода отключена.
С момента:
1.5

fixedContentLength

protected int fixedContentLength
Фиксированная длина содержимого при использовании потоковой передачи с фиксированной длиной. Значение -1 означает, что потоковая передача с фиксированной длиной для вывода отключена.

ПРИМЕЧАНИЕ: fixedContentLengthLong рекомендуется вместо этого поля, так как оно позволяет задавать более длинные длины содержимого.

С момента:
1.5

fixedContentLengthLong

protected long fixedContentLengthLong
Фиксированная длина содержимого при использовании потоковой передачи с фиксированной длиной. Значение -1 означает, что потоковая передача с фиксированной длиной для вывода отключена.
С момента:
1.7

responseCode

protected int responseCode
Значение, представляющее трехзначный код состояния HTTP.
  • 1xx: Информационное
  • 2xx: Успех
  • 3xx: Перенаправление
  • 4xx: Ошибка клиента
  • 5xx: Ошибка сервера

responseMessage

protected String responseMessage
Сообщение HTTP ответа.

instanceFollowRedirects

protected boolean instanceFollowRedirects
Если true, протокол автоматически будет перенаправлять запросы. Если false, протокол не будет автоматически перенаправлять запросы.

Это поле устанавливается методом setInstanceFollowRedirects. Его значение возвращается методом getInstanceFollowRedirects.

Его значение по умолчанию основано на значении статического followRedirects на момент создания HttpURLConnection.

См. также:
  • setInstanceFollowRedirects(boolean)
  • getInstanceFollowRedirects()
  • setFollowRedirects(boolean)

HTTP_OK

public static final int HTTP_OK
Код состояния HTTP 200: OK.
См. также:
  • Значения константных полей

HTTP_CREATED

public static final int HTTP_CREATED
Код состояния HTTP 201: Создано.
См. также:
  • Значения константных полей

HTTP_ACCEPTED

public static final int HTTP_ACCEPTED
Код состояния HTTP 202: Принято.
См. также:
  • Значения константных полей

HTTP_NOT_AUTHORITATIVE

public static final int HTTP_NOT_AUTHORITATIVE
Код состояния HTTP 203: Неавторитетная информация.
См. также:
  • Значения константных полей

HTTP_NO_CONTENT

public static final int HTTP_NO_CONTENT
Код состояния HTTP 204: Нет содержимого.
См. также:
  • Значения константных полей

HTTP_RESET

public static final int HTTP_RESET
Код состояния HTTP 205: Сбросить содержимое.
См. также:
  • Значения константных полей

HTTP_PARTIAL

public static final int HTTP_PARTIAL
Код состояния HTTP 206: Частичное содержимое.
См. также:
  • Значения константных полей

HTTP_MULT_CHOICE

public static final int HTTP_MULT_CHOICE
Код состояния HTTP 300: Несколько вариантов.
См. также:
  • Значения константных полей

HTTP_MOVED_PERM

public static final int HTTP_MOVED_PERM
Код состояния HTTP 301: Постоянное перемещение.
См. также:
  • Значения константных полей

HTTP_MOVED_TEMP

public static final int HTTP_MOVED_TEMP
Код состояния HTTP 302: Временное перенаправление.
См. также:
  • Значения константных полей

HTTP_SEE_OTHER

public static final int HTTP_SEE_OTHER
Код состояния HTTP 303: Смотрите другое.
См. также:
  • Значения константных полей

HTTP_NOT_MODIFIED

public static final int HTTP_NOT_MODIFIED
Код состояния HTTP 304: Не изменялось.
См. также:
  • Значения константных полей

HTTP_USE_PROXY

public static final int HTTP_USE_PROXY
Код состояния HTTP 305: Использовать прокси.
См. также:
  • Значения константных полей

HTTP_BAD_REQUEST

public static final int HTTP_BAD_REQUEST
Код состояния HTTP 400: Неверный запрос.
См. также:
  • Значения константных полей

HTTP_UNAUTHORIZED

public static final int HTTP_UNAUTHORIZED
Код состояния HTTP 401: Неавторизован.
См. также:
  • Значения константных полей

HTTP_PAYMENT_REQUIRED

public static final int HTTP_PAYMENT_REQUIRED
Код состояния HTTP 402: Требуется оплата.
См. также:
  • Значения константных полей

HTTP_FORBIDDEN

public static final int HTTP_FORBIDDEN
Код состояния HTTP 403: Запрещено.
См. также:
  • Значения константных полей

HTTP_NOT_FOUND

public static final int HTTP_NOT_FOUND
Код состояния HTTP 404: Не найдено.
См. также:
  • Значения константных полей

HTTP_BAD_METHOD

public static final int HTTP_BAD_METHOD
Код состояния HTTP 405: Запрещён метод.
См. также:
  • Значения константных полей

HTTP_NOT_ACCEPTABLE

public static final int HTTP_NOT_ACCEPTABLE
Код состояния HTTP 406: Неприемлемо.
См. также:
  • Значения константных полей

HTTP_PROXY_AUTH

public static final int HTTP_PROXY_AUTH
Код состояния HTTP 407: Требуется аутентификация прокси.
См. также:
  • Значения константных полей

HTTP_CLIENT_TIMEOUT

public static final int HTTP_CLIENT_TIMEOUT
HTTP код состояния 408: Истечение времени ожидания запроса.
См. также:
  • Значения постоянных полей

HTTP_CONFLICT

public static final int HTTP_CONFLICT
HTTP код состояния 409: Конфликт.
См. также:
  • Значения постоянных полей

HTTP_GONE

public static final int HTTP_GONE
HTTP код состояния 410: Удалено.
См. также:
  • Значения постоянных полей

HTTP_LENGTH_REQUIRED

public static final int HTTP_LENGTH_REQUIRED
HTTP код состояния 411: Требуется длина.
См. также:
  • Значения постоянных полей

HTTP_PRECON_FAILED

public static final int HTTP_PRECON_FAILED
HTTP код состояния 412: Условие предварительной обработки не выполнено.
См. также:
  • Значения постоянных полей

HTTP_ENTITY_TOO_LARGE

public static final int HTTP_ENTITY_TOO_LARGE
HTTP код состояния 413: Размеры сущности запроса слишком велики.
См. также:
  • Значения постоянных полей

HTTP_REQ_TOO_LONG

public static final int HTTP_REQ_TOO_LONG
HTTP код состояния 414: Слишком длинный URI запроса.
См. также:
  • Значения постоянных полей

HTTP_UNSUPPORTED_TYPE

public static final int HTTP_UNSUPPORTED_TYPE
HTTP код состояния 415: Неподдерживаемый тип медиа.
См. также:
  • Значения постоянных полей

HTTP_SERVER_ERROR

@Deprecated public static final int HTTP_SERVER_ERROR
Устарело.
неверное местоположение и не должно было существовать.
HTTP код состояния 500: Ошибка сервера.
См. также:
  • Значения постоянных полей

HTTP_INTERNAL_ERROR

public static final int HTTP_INTERNAL_ERROR
HTTP код состояния 500: Ошибка сервера.
См. также:
  • Значения постоянных полей

HTTP_NOT_IMPLEMENTED

public static final int HTTP_NOT_IMPLEMENTED
HTTP код состояния 501: Не реализовано.
См. также:
  • Значения постоянных полей

HTTP_BAD_GATEWAY

public static final int HTTP_BAD_GATEWAY
HTTP код состояния 502: Плохой шлюз.
См. также:
  • Значения постоянных полей

HTTP_UNAVAILABLE

public static final int HTTP_UNAVAILABLE
HTTP код состояния 503: Сервис недоступен.
См. также:
  • Значения постоянных полей

HTTP_GATEWAY_TIMEOUT

public static final int HTTP_GATEWAY_TIMEOUT
HTTP код состояния 504: Таймаут шлюза.
См. также:
  • Значения постоянных полей

HTTP_VERSION

public static final int HTTP_VERSION
HTTP код состояния 505: Не поддерживается версия HTTP.
См. также:
  • Значения постоянных полей

Подробное описание конструкторов

HttpURLConnection

protected HttpURLConnection(URL u)
Конструктор для HttpURLConnection.
Параметры:
u - URL

Подробное описание методов

setAuthenticator

public void setAuthenticator(Authenticator auth)
Предоставляет Authenticator для использования при запросе аутентификации через протокол HTTP для этого HttpURLConnection. Если аутентификатор не предоставлен, будет использован стандартный аутентификатор.
Требования к реализации:
По умолчанию этот метод безусловно вызывает UnsupportedOperationException. Конкретные реализации HttpURLConnection, которые поддерживают предоставление Authenticator для конкретного HttpURLConnection экземпляра, должны переопределять этот метод для реализации другого поведения.
Примечание к реализации:
В зависимости от схемы аутентификации, реализация может или не может использовать предоставленный аутентификатор для получения пароля. Например, реализация, которая полагается на сторонние библиотеки безопасности, может всё ещё вызвать стандартный аутентификатор, если эти библиотеки настроены на это. Аналогично, реализация, которая поддерживает прозрачную аутентификацию NTLM, может позволить системе попытаться подключиться с использованием учетных данных пользователя системы сначала, прежде чем вызвать предоставленный аутентификатор.
Однако, если аутентификатор предоставлен явно, то подключение может быть использовано только для HttpURLConnection экземпляров, которые используют тот же Authenticator экземпляр, а информация об аутентификации, если кэширована, может быть использована только для HttpURLConnection экземпляра, использующего тот же Authenticator.
Параметры:
auth - Authenticator, который должен использоваться этим HttpURLConnection.
Исключения:
UnsupportedOperationException - если настройка аутентификатора не поддерживается базовой реализацией.
IllegalStateException - если URLConnection уже подключен.
NullPointerException - если предоставленный auth является null.
С тех пор как:
9

getHeaderFieldKey

public String getHeaderFieldKey(int n)
Возвращает ключ для i-го поля заголовка. Некоторые реализации могут рассматривать i-е поле заголовка как специальное, т.е. как строку состояния, возвращённую сервером HTTP. В этом случае getHeaderField(int) возвращает строку состояния, а getHeaderFieldKey(int) возвращает null.
Переопределяет:
getHeaderFieldKey в классе URLConnection
Параметры:
n - индекс, где i-ое поле заголовка.
Возвращает:
ключ для i-го поля заголовка или null, если ключ не существует.

setFixedLengthStreamingMode

public void setFixedLengthStreamingMode(int contentLength)
Этот метод используется для включения потоковой передачи тела HTTP-запроса без внутренней буферизации, когда длина содержимого известна заранее.

Будет выброшено исключение, если приложение попытается записать больше данных, чем указанная длина содержимого, или если приложение закроет OutputStream до записи указанного объёма.

Когда включена потоковая передача вывода, аутентификация и перенаправление не могут обрабатываться автоматически. При чтении ответа будет выброшено исключение HttpRetryException, если необходимы аутентификация или перенаправление. Это исключение может быть запрошено для получения деталей ошибки.

Этот метод должен быть вызван до подключения URLConnection.

ПРИМЕЧАНИЕ: setFixedLengthStreamingMode(long) рекомендуется вместо этого метода, так как он позволяет задавать более длинные длины содержимого.

Параметры:
contentLength - Количество байт, которые будут записаны в OutputStream.
Исключения:
IllegalStateException - если URLConnection уже подключен или если другой режим потоковой передачи уже включён.
IllegalArgumentException - если задана длина содержимого меньше нуля.
С тех пор как:
1.5
См. также:
  • setChunkedStreamingMode(int)

setFixedLengthStreamingMode

public void setFixedLengthStreamingMode(long contentLength)
Этот метод используется для включения потоковой передачи тела HTTP-запроса без внутренней буферизации, когда длина содержимого известна заранее.

Будет выброшено исключение, если приложение попытается записать больше данных, чем указанная длина содержимого, или если приложение закроет OutputStream до записи указанного количества.

При включённой потоковой передаче вывода аутентификация и переадресация не могут обрабатываться автоматически. При чтении ответа будет выброшено исключение HttpRetryException, если требуется аутентификация или переадресация. Это исключение можно запросить для получения подробностей об ошибке.

Этот метод должен быть вызван до подключения URLConnection.

Длина содержимого, установленная с помощью этого метода, имеет приоритет над любым значением, установленным с помощью setFixedLengthStreamingMode(int).

Parameters:
contentLength - Количество байтов, которое будет записано в OutputStream.
Throws:
IllegalStateException - если URLConnection уже подключено или если уже включён другой режим потоковой передачи.
IllegalArgumentException - если указана длина содержимого меньше нуля.
Since:
1.7

setChunkedStreamingMode

public void setChunkedStreamingMode(int chunklen)
Этот метод используется для включения потоковой передачи тела HTTP-запроса без внутренней буферизации, когда длина содержимого заранее не известна. В этом режиме используется блочная кодировка передачи для отправки тела запроса. Обратите внимание, что не все HTTP-серверы поддерживают этот режим.

При включённой потоковой передаче вывода аутентификация и переадресация не могут обрабатываться автоматически. При чтении ответа будет выброшено исключение HttpRetryException, если требуется аутентификация или переадресация. Это исключение можно запросить для получения подробностей об ошибке.

Этот метод должен быть вызван до подключения URLConnection.

Parameters:
chunklen - Количество байтов, подлежащих записи в каждом блоке, включая заголовок размера блока в шестнадцатеричном формате (минимум 1 байт), два CRLF (4 байта) и минимальную длину полезной нагрузки в 1 байт. Если chunklen меньше или равно 5, будет использовано более высокое значение по умолчанию.
Throws:
IllegalStateException - если URLConnection уже подключено или если уже включён другой режим потоковой передачи.
Since:
1.5
See Also:
  • setFixedLengthStreamingMode(int)

getHeaderField

public String getHeaderField(int n)
Возвращает значение для n-го заголовка поля. Некоторые реализации могут рассматривать 0-е поле заголовка как специальное, т.е. как строку состояния, возвращённую HTTP-сервером.

Этот метод можно использовать совместно с методом getHeaderFieldKey для перебора всех заголовков в сообщении.

Overrides:
getHeaderField в классе URLConnection
Parameters:
n - индекс, где n>=0.
Returns:
значение n-го поля заголовка или null, если значение не существует.
See Also:
  • getHeaderFieldKey(int)

setFollowRedirects

public static void setFollowRedirects(boolean set)
Устанавливает, должны ли HTTP-переадресации (запросы с кодом ответа 3xx) автоматически следовать за этим классом. По умолчанию значение true. Апплеты не могут изменить эту переменную.

Если есть менеджер безопасности, этот метод сначала вызывает метод менеджера безопасности checkSetFactory для проверки разрешения на операцию. Это может привести к исключению SecurityException.

Parameters:
set - значение, указывающее, следует ли следовать HTTP-переадресациям.
Throws:
SecurityException - если существует менеджер безопасности, и его метод checkSetFactory не разрешает операцию.
See Also:
  • SecurityManager.checkSetFactory()
  • getFollowRedirects()

getFollowRedirects

public static boolean getFollowRedirects()
Возвращает значение, указывающее, должны ли HTTP-переадресации (3xx) следовать автоматически.
Returns:
true если HTTP-переадресации должны следовать автоматически, false если нет.
See Also:
  • setFollowRedirects(boolean)

setInstanceFollowRedirects

public void setInstanceFollowRedirects(boolean followRedirects)
Устанавливает, должны ли HTTP-переадресации (запросы с кодом ответа 3xx) автоматически следовать за этим экземпляром HttpURLConnection.

Значение по умолчанию взято из followRedirects, которое по умолчанию равно true.

Parameters:
followRedirects - значение, указывающее, следует ли следовать HTTP-переадресациям.
Since:
1.3
See Also:
  • instanceFollowRedirects
  • getInstanceFollowRedirects()

getInstanceFollowRedirects

public boolean getInstanceFollowRedirects()
Возвращает значение поля instanceFollowRedirects этого экземпляра HttpURLConnection.
Returns:
значение поля instanceFollowRedirects этого экземпляра HttpURLConnection.
Since:
1.3
See Also:
  • instanceFollowRedirects
  • setInstanceFollowRedirects(boolean)

setRequestMethod

public void setRequestMethod(String method) throws ProtocolException
Устанавливает метод для запроса к URL, один из:
  • GET
  • POST
  • HEAD
  • OPTIONS
  • PUT
  • DELETE
  • TRACE
допустимы, с учётом ограничений протокола. Метод по умолчанию - GET.
Parameters:
method - HTTP-метод
Throws:
ProtocolException - если метод не может быть сброшен или если запрашиваемый метод не является допустимым для HTTP.
SecurityException - если установлен менеджер безопасности, и метод равен "TRACE", но разрешение NetPermission "allowHttpTrace" не предоставлено.
See Also:
  • getRequestMethod()

getRequestMethod

public String getRequestMethod()
Получить метод запроса.
Returns:
HTTP-метод запроса
See Also:
  • setRequestMethod(java.lang.String)

getResponseCode

public int getResponseCode() throws IOException
Получить код состояния из HTTP-сообщения ответа. Например, в случае следующих строк состояния:
 HTTP/1.0 200 OK
 HTTP/1.0 401 Unauthorized
 
Он вернёт соответственно 200 и 401. Возвращает -1, если код не может быть выделен из ответа (т.е. ответ не является валидным HTTP).
Returns:
HTTP-код состояния или -1
Throws:
IOException - если при подключении к серверу произошла ошибка.

getResponseMessage

public String getResponseMessage() throws IOException
Получить HTTP-сообщение ответа, если оно есть, возвращённое вместе с кодом ответа сервером. Из ответов вроде:
 HTTP/1.0 200 OK
 HTTP/1.0 404 Not Found
 
Извлекает строки "OK" и "Not Found" соответственно. Возвращает null, если ни одно из них не может быть выделено из ответов (результат не является валидным HTTP).
Returns:
HTTP-сообщение ответа или null
Throws:
IOException - если при подключении к серверу произошла ошибка.

disconnect

public abstract void disconnect()
Указывает, что другие запросы к серверу в ближайшем будущем маловероятны. Вызов disconnect() не должен подразумевать, что этот экземпляр HttpURLConnection можно повторно использовать для других запросов.

usingProxy

public abstract boolean usingProxy()
Указывает, происходит ли соединение через прокси. Этот метод возвращает true если соединение известно как проходящее или прошлое через прокси, и возвращает false если соединение никогда не пройдёт через прокси или если использование прокси определить невозможно.
Returns:
булево значение, указывающее, использует ли соединение прокси.

getPermission

public Permission getPermission() throws IOException
Возвращает объект SocketPermission, представляющий разрешение, необходимое для подключения к целевому хосту и порту.
Overrides:
getPermission в классе URLConnection
Returns:
объект SocketPermission, представляющий разрешение, необходимое для подключения к целевому хосту и порту.
Throws:
IOException - если при вычислении разрешения произошла ошибка.

getErrorStream

public InputStream getErrorStream()
Возвращает поток ошибок, если подключение завершилось с ошибкой, но сервер тем не менее отправил полезные данные. Типичный пример — когда HTTP-сервер отвечает кодом 404, что вызывает исключение FileNotFoundException при подключении, но сервер отправил страницу справки HTML с рекомендациями.

Этот метод не инициирует подключение. Если подключение не установлено, или сервер не имел ошибок во время подключения, или сервер имел ошибку, но не отправлял данные об ошибке, этот метод вернёт null. Это значение по умолчанию.

Возвращает:
поток ошибок, если есть, null, если ошибок нет, подключение не установлено или сервер не отправил полезных данных.

© 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/java/net/HttpURLConnection.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API