Класс URLConnection
- Прямые известные подклассы:
-
HttpURLConnection,JarURLConnection
public abstract class URLConnection extends Object
URLConnection является суперклассом всех классов, представляющих канал связи между приложением и URL. Экземпляры этого класса могут использоваться как для чтения, так и для записи в ресурс, на который ссылается URL. В общем случае, создание соединения с URL — многоступенчатый процесс:
- Объект соединения создаётся путём вызова метода
openConnectionна URL. - Настраиваются параметры и общие свойства запроса.
- Фактическое подключение к удалённому объекту выполняется с помощью метода
connect. - Удалённый объект становится доступным. Можно получить доступ к заголовкам и содержимому удалённого объекта.
Параметры настройки изменяются с помощью следующих методов:
-
setAllowUserInteraction -
setDoInput -
setDoOutput -
setIfModifiedSince -
setUseCaches
а общие свойства запроса изменяются с помощью метода:
-
setRequestProperty
Значения по умолчанию для параметров AllowUserInteraction и UseCaches можно установить с помощью методов setDefaultAllowUserInteraction и setDefaultUseCaches.
Каждый из вышеперечисленных set методов имеет соответствующий get метод для извлечения значения параметра или общего свойства запроса. Конкретные параметры и общие свойства запроса зависят от протокола.
После подключения к удалённому объекту для доступа к заголовкам и содержимому используются следующие методы:
-
getContent -
getHeaderField -
getInputStream -
getOutputStream
Некоторые заголовки часто используются. Методы:
-
getContentEncoding -
getContentLength -
getContentType -
getDate -
getExpiration -
getLastModified
обеспечивают удобный доступ к этим полям. Метод getContentType используется методом getContent для определения типа удалённого объекта; подклассы могут найти удобным переопределение метода getContentType.
В общем случае, все параметры до подключения и общие свойства запроса можно игнорировать: параметры до подключения и свойства запроса устанавливаются по умолчанию. Для большинства клиентов этого интерфейса существуют только два интересных метода: getInputStream и getContent, которые дублируются в классе URL удобными методами.
Дополнительную информацию о свойствах запроса и заголовках соединения http можно найти по адресу:
Вызов методовhttp://www.ietf.org/rfc/rfc2616.txt
close() для InputStream или OutputStream экземпляра URLConnection после запроса может освободить сетевые ресурсы, связанные с этим экземпляром, если конкретные спецификации протокола не указывают другое поведение.- С:
- 1.0
- Внешние спецификации
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
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 |
Создаёт соединение с URL. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
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 как целое число. |
String |
getContentType() |
Возвращает значение поля заголовка content-type. |
long |
getDate() |
Возвращает значение поля заголовка date. |
static boolean |
getDefaultAllowUserInteraction() |
Возвращает значение поля allowUserInteraction по умолчанию. |
static String |
getDefaultRequestProperty |
Устарело. Следует использовать метод getRequestProperty конкретного экземпляра после получения соответствующего экземпляра URLConnection. |
boolean |
getDefaultUseCaches() |
Возвращает значение флага URLConnection по умолчанию для useCaches. |
static boolean |
getDefaultUseCaches |
Возвращает значение флага useCaches по умолчанию для данного протокола. |
boolean |
getDoInput() |
Возвращает значение флага doInput этого URLConnection. |
boolean |
getDoOutput() |
Возвращает значение флага doOutput этого URLConnection. |
long |
getExpiration() |
Возвращает значение поля заголовка expires. |
static FileNameMap |
getFileNameMap() |
Загружает карту имен файлов (mimetable) из файла данных. |
String |
getHeaderField |
Возвращает значение поля заголовка с индексом n. |
String |
getHeaderField |
Возвращает значение поля заголовка по имени. |
long |
getHeaderFieldDate |
Возвращает значение поля по имени, интерпретируя его как дату. |
int |
getHeaderFieldInt |
Возвращает значение поля по имени, интерпретируя его как число. |
String |
getHeaderFieldKey |
Возвращает ключ поля заголовка с индексом n. |
long |
getHeaderFieldLong |
Возвращает значение поля по имени, интерпретируя его как число. |
Map |
getHeaderFields() |
Возвращает неизменяемую карту полей заголовков. |
long |
getIfModifiedSince() |
Возвращает значение поля ifModifiedSince этого объекта. |
InputStream |
getInputStream() |
Возвращает поток ввода для чтения из этого открытого соединения. |
long |
getLastModified() |
Возвращает значение поля заголовка last-modified. |
OutputStream |
getOutputStream() |
Возвращает поток вывода для записи в это соединение. |
Permission |
getPermission() |
Возвращает объект разрешения, представляющий разрешение, необходимое для установления соединения, представленного этим объектом. |
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 |
Устарело. Следует использовать метод setRequestProperty конкретного экземпляра после получения соответствующего экземпляра URLConnection. |
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() |
Возвращает представление String этого соединения URL. |
Подробное описание полей
url
protected URL url
Значение этого поля можно получить с помощью метода getURL.
Значение по умолчанию этой переменной — значение аргумента URL в конструкторе URLConnection.
- См. также:
doInput
protected boolean doInput
setDoInput. Её значение возвращается методом getDoInput. Соединение URL может использоваться для ввода и/или вывода. Установка флага doInput в значение true указывает, что приложение намерено читать данные из соединения URL.
Значение по умолчанию этого поля — true.
- См. также:
doOutput
protected boolean doOutput
setDoOutput. Её значение возвращается методом getDoOutput. Соединение URL может использоваться для ввода и/или вывода. Установка флага doOutput в значение true указывает, что приложение намерено записывать данные в соединение URL.
Значение по умолчанию этого поля — false.
- См. также:
allowUserInteraction
protected boolean allowUserInteraction
true, это соединение рассматривается в контексте, где уместно разрешить взаимодействие с пользователем, например, вызов диалогового окна аутентификации. Если false, взаимодействие с пользователем запрещено. Значение этого поля можно установить с помощью метода setAllowUserInteraction. Его значение возвращается методом getAllowUserInteraction. Значение по умолчанию — значение аргумента в последнем вызове метода setDefaultAllowUserInteraction.
- См. также:
useCaches
protected boolean useCaches
true, протоколу разрешено использовать кэширование, когда это возможно. Если false, протокол должен всегда пытаться получить свежую копию объекта. Это поле устанавливается методом setUseCaches. Его значение возвращается методом getUseCaches.
Значение по умолчанию — значение, заданное в последнем вызове метода setDefaultUseCaches.
Значение по умолчанию может быть переопределено для каждого протокола с помощью setDefaultUseCaches(String,boolean).
- См. также:
ifModifiedSince
protected long ifModifiedSince
ненулевое значение — время в миллисекундах с момента 1 января 1970 года по Гринвичу. Объект извлекается только в том случае, если он был изменён позднее этого времени.
Эта переменная устанавливается методом setIfModifiedSince. Её значение возвращается методом getIfModifiedSince.
Значение по умолчанию этого поля — 0, что указывает на то, что загрузка должна всегда происходить.
- См. также:
connected
protected boolean connected
false, объект соединения не установил связь с указанным URL. Если true, связь установлена.Подробное описание конструкторов
URLConnection
protected URLConnection(URL url)
- Параметры:
-
url- указанный URL.
Подробное описание методов
getFileNameMap
public static FileNameMap getFileNameMap()
- Возвращает:
- FileNameMap
- Since:
- 1.2
- См. также:
setFileNameMap
public static void setFileNameMap(FileNameMap map)
Если существует менеджер безопасности, этот метод сначала вызывает метод менеджера безопасности checkSetFactory для проверки разрешения на операцию. Это может привести к исключению SecurityException.
- Параметры:
-
map- устанавливаемый FileNameMap - Исключения:
-
SecurityException- если менеджер безопасности существует и его методcheckSetFactoryне разрешает операцию. - Since:
- 1.2
- См. также:
connect
public abstract void connect() throws IOException
Если метод connect вызывается, когда соединение уже открыто (что указывается значением поля connected равным true), вызов игнорируется.
Объекты URLConnection проходят две фазы: сначала они создаются, затем они подключаются. После создания и до подключения можно указать различные параметры (например, doInput и UseCaches). После подключения попытка установить их приводит к ошибке. Операции, зависящие от подключения, такие как getContentLength, неявно выполняют подключение, если это необходимо.
- Исключения:
-
SocketTimeoutException- если таймаут истекает до того, как подключение может быть установлено -
IOException- если при открытии соединения произошла ошибка ввода-вывода. - См. также:
setConnectTimeout
public void setConnectTimeout(int timeout)
Некоторые нестандартные реализации этого метода могут игнорировать указанный таймаут. Чтобы узнать установленное значение таймаута подключения, используйте getConnectTimeout().
- Параметры:
-
timeout- значение таймаута подключения в миллисекундах - Исключения:
-
IllegalArgumentException- если параметр таймаута отрицательный - Since:
- 1.5
- См. также:
getConnectTimeout
public int getConnectTimeout()
Возвращаемое значение 0 означает, что опция отключена (т.е. таймаут бесконечен).
- Возвращает:
- Значение таймаута подключения в миллисекундах
- Since:
- 1.5
- См. также:
setReadTimeout
public void setReadTimeout(int timeout)
Некоторые нестандартные реализации этого метода игнорируют указанный таймаут. Чтобы узнать установленное значение таймаута чтения, используйте getReadTimeout().
- Параметры:
-
timeout- значение таймаута чтения в миллисекундах - Исключения:
-
IllegalArgumentException- если параметр таймаута отрицательный - Since:
- 1.5
- См. также:
getReadTimeout
public int getReadTimeout()
- Возвращает:
- значение таймаута чтения в миллисекундах
- С момента:
- 1.5
- См. также:
getURL
public URL getURL()
URLConnection в данном объекте URL. - Возвращает:
- значение поля
URLConnectionв данном объектеURL. - См. также:
getContentLength
public int getContentLength()
content-length. Примечание: Следует предпочесть метод getContentLengthLong(), так как он возвращает значение типа long и, следовательно, более портативен.
- Возвращает:
- длину содержимого ресурса, на который ссылается URL данного подключения.
-1если длина содержимого неизвестна или больше Integer.MAX_VALUE.
getContentLengthLong
public long getContentLengthLong()
content-length в виде long.- Возвращает:
- длину содержимого ресурса, на который ссылается URL данного подключения, или
-1если длина содержимого неизвестна. - С момента:
- 1.7
getContentType
public String getContentType()
content-type. - Возвращает:
- тип содержимого ресурса, на который ссылается URL, или
nullесли тип содержимого неизвестен. - См. также:
getContentEncoding
public String getContentEncoding()
content-encoding. - Возвращает:
- кодировку содержимого ресурса, на который ссылается URL, или
nullесли кодировка неизвестна. - См. также:
getExpiration
public long getExpiration()
expires. - Возвращает:
- дату истечения срока действия ресурса, на который ссылается URL, или 0, если дата неизвестна. Значение представляет собой количество миллисекунд, прошедших с 1 января 1970 года по Гринвичу.
- См. также:
getDate
public long getDate()
date. - Возвращает:
- дату отправки ресурса, на который ссылается URL, или
0если дата неизвестна. Возвращаемое значение представляет собой количество миллисекунд, прошедших с 1 января 1970 года по Гринвичу. - См. также:
getLastModified
public long getLastModified()
last-modified. Результат представляет собой количество миллисекунд, прошедших с 1 января 1970 года по Гринвичу.- Возвращает:
- последнюю дату изменения ресурса, на который ссылается данный объект
URLConnection, или 0, если дата неизвестна. - См. также:
getHeaderField
public String getHeaderField(String name)
Если к подключению применяется один и тот же заголовок несколько раз с разными значениями, возвращается только последнее значение.
- Параметры:
-
name- имя поля заголовка. - Возвращает:
- значение поля заголовка с заданным именем, или
nullесли такое поле отсутствует.
getHeaderFields
public Map<String,List<String>> getHeaderFields()
URLConnection. При реализации этих методов, если для данного ключа имеется несколько соответствующих значений, они должны возвращаться в порядке их добавления, сохраняя порядок вставки.- Требования к реализации:
- Стандартная реализация этого метода всегда возвращает пустую карту.
- Возвращает:
- карта полей заголовков
- С момента:
- 1.4
getHeaderFieldInt
public int getHeaderFieldInt(String name, int defaultValue)
Этот вариант getHeaderField существует, потому что некоторые типы подключений (например, http-ng) имеют предварительно обработанные заголовки. Классы для такого типа подключений могут переопределить этот метод и выполнить быстрый возврат.
- Параметры:
-
name- имя поля заголовка. -
defaultValue- значение по умолчанию. - Возвращает:
- значение указанного поля, преобразованное в целое число. Значение
defaultValueвозвращается, если поле отсутствует или имеет неправильный формат.
getHeaderFieldLong
public long getHeaderFieldLong(String name, long defaultValue)
Этот вариант getHeaderField существует, потому что некоторые типы подключений (например, http-ng) имеют предварительно обработанные заголовки. Классы для такого типа подключений могут переопределить этот метод и выполнить быстрый возврат.
- Параметры:
-
name- имя поля заголовка. -
defaultValue- значение по умолчанию. - Возвращает:
- значение указанного поля, преобразованное в целое число типа long. Значение
defaultValueвозвращается, если поле отсутствует или имеет неправильный формат. - С момента:
- 1.7
getHeaderFieldDate
public long getHeaderFieldDate(String name, long defaultValue)
Этот вариант getHeaderField существует, потому что некоторые типы подключений (например, http-ng) имеют предварительно обработанные заголовки. Классы для такого типа подключений могут переопределить этот метод и выполнить быстрый возврат.
- Параметры:
-
name- имя поля заголовка. -
defaultValue- значение по умолчанию. - Возвращает:
- значение поля, преобразованное в дату. Если поле отсутствует или имеет неправильный формат, возвращается значение аргумента
defaultValue.
getHeaderFieldKey
public String getHeaderFieldKey(int n)
n-го поля заголовка. Некоторые реализации могут рассматривать 0-е поле заголовка как специальное, в таком случае getHeaderField(0) может вернуть какое-то значение, но getHeaderFieldKey(0) вернет null. Для n > 0 оно возвращает null если количество полей меньше n+1. - Параметры:
-
n- индекс, гдеn>=0 - Возвращает:
- ключ для
n-го поля заголовка илиnullесли количество полей меньшеn+1при использованииn > 0.
getHeaderField
public String getHeaderField(int n)
n-го поля заголовка. Возвращает null если количество полей меньше n+1. Этот метод можно использовать совместно с методом getHeaderFieldKey для перебора всех заголовков в сообщении.
- Параметры:
-
n- индекс, гдеn>=0 - Возвращает:
- значение
n-го поля заголовка илиnullесли количество полей меньшеn+1. - См. также:
getContent
public Object getContent() throws IOException
Этот метод сначала определяет тип содержимого объекта, вызвав метод getContentType. Если это первый раз, когда приложение видит этот тип содержимого, создаётся обработчик содержимого для этого типа.
Это выполняется следующим образом:
- Если приложение настроило экземпляр фабрики обработчиков содержимого с помощью метода
setContentHandlerFactory, вызывается методcreateContentHandlerэтого экземпляра с типом содержимого в качестве аргумента; результатом является обработчик содержимого для этого типа. - Если фабрика обработчиков содержимого ещё не настроена или метод фабрики
createContentHandlerвозвращаетnull, используется механизм ServiceLoader для поиска реализаций ContentHandlerFactory с помощью системного загрузчика классов. Порядок поиска фабрик зависит от реализации, и реализация может кэшировать найденные фабрики. Любая ошибка ServiceConfigurationError,ErrorилиRuntimeException, возникающая при вызовеcreateContentHandler, будет передана вызывающей нити. МетодcreateContentHandlerкаждой фабрики, если она была создана, вызывается с типом содержимого, пока фабрика не вернёт значение, отличное от null, или все фабрики не будут исчерпаны. - В противном случае этот метод пытается загрузить класс обработчика содержимого, как определено в
ContentHandler. Если класс не существует или не является подклассомContentHandler, выбрасывается исключениеUnknownServiceException.
- Возвращает:
- полученный объект. Оператор
instanceofдолжен использоваться для определения конкретного типа возвращаемого объекта. - Исключения:
-
IOException- если при получении содержимого произошла ошибка ввода/вывода. -
UnknownServiceException- если протокол не поддерживает тип содержимого. - См. также:
getContent
public Object getContent(Class<?>[] classes) throws IOException
- Параметры:
-
classes- массивClass, указывающий на запрашиваемые типы - Возвращает:
- полученный объект, который является первым совпадением указанного в массиве классов типа. null, если ни один из запрашиваемых типов не поддерживается. Оператор
instanceofдолжен использоваться для определения конкретного типа возвращаемого объекта. - Исключения:
-
IOException- если при получении содержимого произошла ошибка ввода/вывода. -
UnknownServiceException- если протокол не поддерживает тип содержимого. - С:
- 1.3
- См. также:
getPermission
public Permission getPermission() throws IOException
java.security.AllPermission. Подклассы должны переопределять этот метод и возвращать разрешение, которое лучше всего отражает разрешение, необходимое для подключения к URL. Например, URLConnection , представляющий URL file:, возвращает объект java.io.FilePermission. Возвращаемое разрешение может зависеть от состояния соединения. Например, разрешение перед подключением может отличаться от разрешения после подключения. Например, HTTP-сервер, скажем, foo.com, может перенаправить соединение на другой хост, скажем, bar.com. Перед подключением разрешение, возвращаемое соединением, будет представлять разрешение, необходимое для подключения к foo.com, в то время как разрешение, возвращаемое после подключения, будет относиться к bar.com.
Разрешения обычно используются для двух целей: для защиты кэшей объектов, полученных через URLConnections, и для проверки права получателя на получение информации о конкретном URL. В первом случае разрешение должно быть получено после получения объекта. Например, в соединении HTTP это будет представлять разрешение на подключение к хосту, с которого данные были в конечном счёте получены. Во втором случае разрешение должно быть получено и проверено перед подключением.
- Возвращает:
- объект разрешения, представляющий разрешение, необходимое для создания соединения, представленного этим URLConnection.
- Исключения:
-
IOException- если для вычисления разрешения требуется ввод/вывод по сети или файлам и при его вычислении произошла ошибка.
getInputStream
public InputStream getInputStream() throws IOException
- Примечание API:
- Возвращаемый этим методом поток ввода может быть обёрткой
InflaterInputStream, чей методread(byte[], int, int)может изменить любой элемент буфера вывода. - Возвращает:
- поток ввода, читающий из этого открытого соединения.
- Исключения:
-
IOException- если при создании потока ввода произошла ошибка ввода/вывода. -
UnknownServiceException- если протокол не поддерживает ввод. - См. также:
getOutputStream
public OutputStream getOutputStream() throws IOException
- Возвращает:
- поток вывода, записывающий в это соединение.
- Исключения:
-
IOException- если при создании потока вывода произошла ошибка ввода/вывода. -
UnknownServiceException- если протокол не поддерживает вывод.
toString
public String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этого соединения URL.
setDoInput
public void setDoInput(boolean doinput)
doInput для этого URLConnection на указанное значение. Соединение URL может использоваться для ввода и/или вывода. Установите флаг doInput в true, если планируется использовать соединение URL для ввода, в false — если нет. По умолчанию значение true.
- Параметры:
-
doinput- новое значение. - Исключения:
-
IllegalStateException- если соединение уже установлено - См. также:
getDoInput
public boolean getDoInput()
doInput этого URLConnection. - Возвращает:
- значение флага
doInputэтогоURLConnection. - См. также:
setDoOutput
public void setDoOutput(boolean dooutput)
doOutput для этого URLConnection на указанное значение. Соединение URL может использоваться для ввода и/или вывода. Установите флаг doOutput в true, если планируется использовать соединение URL для вывода, в false — если нет. По умолчанию значение false.
- Параметры:
-
dooutput- новое значение. - Исключения:
-
IllegalStateException- если соединение уже установлено - См. также:
getDoOutput
public boolean getDoOutput()
doOutput этого URLConnection. - Возвращает:
- значение флага
doOutputэтогоURLConnection. - См. также:
setAllowUserInteraction
public void setAllowUserInteraction(boolean allowuserinteraction)
allowUserInteraction этого URLConnection.- Параметры:
-
allowuserinteraction- новое значение. - Исключения:
-
IllegalStateException- если соединение уже установлено - См. также:
getAllowUserInteraction
public boolean getAllowUserInteraction()
allowUserInteraction для этого объекта.- Возвращает:
- значение поля
allowUserInteractionдля этого объекта. - См. также:
setDefaultAllowUserInteraction
public static void setDefaultAllowUserInteraction(boolean defaultallowuserinteraction)
allowUserInteraction для всех будущих объектов URLConnection на указанное значение.- Parameters:
-
defaultallowuserinteraction- новое значение. - See Also:
getDefaultAllowUserInteraction
public static boolean getDefaultAllowUserInteraction()
allowUserInteraction. Это значение является «липким», являясь частью статического состояния всех URLConnections. Этот флаг применяется к следующему и всем последующим созданным URLConnections.
- Returns:
- значение по умолчанию для поля
allowUserInteraction. - See Also:
setUseCaches
public void setUseCaches(boolean usecaches)
useCaches данного URLConnection на заданное значение. Некоторые протоколы кэшируют документы. Иногда важно «пробить» и проигнорировать кэши (например, кнопка «Обновить» в браузере). Если флаг UseCaches для соединения имеет значение true, соединение разрешено использовать кэши. Если false, кэши игнорируются. Значение по умолчанию берётся из defaultUseCaches, которое по умолчанию равно true. Значение по умолчанию также может быть установлено для каждого протокола с помощью setDefaultUseCaches(String,boolean).
- Parameters:
-
usecaches- указывает, разрешено ли кэширование - Throws:
-
IllegalStateException- если соединение уже установлено - See Also:
getUseCaches
public boolean getUseCaches()
useCaches данного объекта URLConnection. - Returns:
- значение поля
useCachesданного объектаURLConnection. - See Also:
setIfModifiedSince
public void setIfModifiedSince(long ifmodifiedsince)
ifModifiedSince данного URLConnection на заданное значение.- Parameters:
-
ifmodifiedsince- новое значение. - Throws:
-
IllegalStateException- если соединение уже установлено - See Also:
getIfModifiedSince
public long getIfModifiedSince()
ifModifiedSince данного объекта.- Returns:
- значение поля
ifModifiedSinceданного объекта. - See Also:
getDefaultUseCaches
public boolean getDefaultUseCaches()
useCaches объекта URLConnection. Это значение является «липким», являясь частью статического состояния всех URLConnections. Это значение по умолчанию может быть переопределено для каждого протокола с помощью setDefaultUseCaches(String,boolean)
- Returns:
- значение по умолчанию для флага
useCachesобъектаURLConnection. - See Also:
setDefaultUseCaches
public void setDefaultUseCaches(boolean defaultusecaches)
useCaches на заданное значение. Это значение по умолчанию может быть переопределено для каждого протокола с помощью setDefaultUseCaches(String,boolean)
- Parameters:
-
defaultusecaches- новое значение. - See Also:
setDefaultUseCaches
public static void setDefaultUseCaches(String protocol, boolean defaultVal)
useCaches для указанного протокола на заданное значение. Это значение переопределяет любое значение по умолчанию, заданное методом setDefaultUseCaches(boolean) для данного протокола. Последующие вызовы этого метода изменяют настройку и влияют на значение по умолчанию для всех будущих соединений этого протокола. Имя протокола нечувствительно к регистру.- Parameters:
-
protocol- протокол, для которого устанавливается значение по умолчанию -
defaultVal- включено ли кэширование по умолчанию для данного протокола - Since:
- 9
getDefaultUseCaches
public static boolean getDefaultUseCaches(String protocol)
useCaches для указанного протокола. Если был вызван метод setDefaultUseCaches(String,boolean) для данного протокола, то возвращается это значение. В противном случае, если был вызван метод setDefaultUseCaches(boolean), возвращается это значение. Если ни один из методов не был вызван, то возвращается true. Имя протокола нечувствительно к регистру.- Parameters:
-
protocol- протокол, для которого требуется значение defaultUseCaches - Returns:
- значение по умолчанию для флага
useCachesдля данного протокола. - Since:
- 9
setRequestProperty
public void setRequestProperty(String key, String value)
ПРИМЕЧАНИЕ: HTTP требует, чтобы все свойства запроса, которые могут иметь несколько экземпляров с одним и тем же ключом, использовали синтаксис с запятыми, что позволяет добавлять несколько свойств в одно свойство.
- Parameters:
-
key- ключевое слово, по которому известен запрос (например, "Accept"). -
value- значение, связанное с ним. - Throws:
-
IllegalStateException- если соединение уже установлено -
NullPointerException- если ключnull - See Also:
addRequestProperty
public void addRequestProperty(String key, String value)
- Parameters:
-
key- ключевое слово, по которому известен запрос (например, "Accept"). -
value- значение, связанное с ним. - Throws:
-
IllegalStateException- если соединение уже установлено -
NullPointerException- если ключ null - Since:
- 1.4
- See Also:
getRequestProperty
public String getRequestProperty(String key)
- Parameters:
-
key- ключевое слово, по которому известен запрос (например, "Accept"). - Returns:
- значение общего свойства запроса с указанным именем для этого соединения. Если ключ null, то возвращается null.
- Throws:
-
IllegalStateException- если соединение уже установлено - See Also:
getRequestProperties
public Map<String,List<String>> getRequestProperties()
addRequestProperty(String, String), эти значения будут возвращены в порядке их добавления. Этот метод должен сохранять порядок вставки таких значений. Реализация по умолчанию этого метода сохраняет порядок вставки, когда для данного ключа добавляются несколько значений. Значения возвращаются в порядке их добавления.- Returns:
- карта общих свойств запроса для этого соединения.
- Throws:
-
IllegalStateException- если соединение уже установлено - Since:
- 1.4
УстановитьСвойствоЗапросаПоУмолчанию
@Deprecated public static void setDefaultRequestProperty(String key, String value)
URLConnection оно инициализируется этими свойствами.- Параметры:
-
key- ключевое слово, по которому известен запрос (например, "Accept"). -
value- значение, связанное с ключом. - См. также:
ПолучитьСвойствоЗапросаПоУмолчанию
@Deprecated public static String getDefaultRequestProperty(String key)
- Параметры:
-
key- ключевое слово, по которому известен запрос (например, "Accept"). - Возвращает:
- значение свойства запроса по умолчанию для указанного ключа.
- См. также:
УстановитьПроизводителяОбработчиковСодержимого
public static void setContentHandlerFactory(ContentHandlerFactory fac)
ContentHandlerFactory приложения. Его можно вызывать не более одного раза приложением. Экземпляр ContentHandlerFactory используется для построения обработчика содержимого по типу содержимого.
Если существует менеджер безопасности, этот метод сначала вызывает метод checkSetFactory менеджера безопасности, чтобы убедиться, что операция разрешена. Это может привести к SecurityException.
- Параметры:
-
fac- желаемый производитель. - Исключения:
-
Error- если производитель уже определен. -
SecurityException- если менеджер безопасности существует и его методcheckSetFactoryне разрешает операцию. - См. также:
ОпределитьТипСодержимогоПоИмени
public static String guessContentTypeFromName(String fname)
getContentType. - Параметры:
-
fname- имя файла. - Возвращает:
- предположение о типе содержимого объекта на основе его имени файла.
- См. также:
ОпределитьТипСодержимогоПоПотоку
public static String guessContentTypeFromStream(InputStream is) throws IOException
getContentType. В идеале, эта процедура не нужна. Но многие http серверы возвращают неправильный тип содержимого; кроме того, существует много нестандартных расширений. Прямое исследование байтов для определения типа содержимого часто более точное, чем вера в тип содержимого, заявленный сервером http.
- Параметры:
-
is- входной поток, поддерживающий метки. - Возвращает:
- предположение о типе содержимого, или
null, если определить тип не удаётся. - Исключения:
-
IOException- если во время чтения входного потока произошла ошибка ввода-вывода. - См. также:
© 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/URLConnection.html