Spec-Zone.ru › OpenJDK 8

Класс URLConnection

  • java.lang.Object
    • java.net.URLConnection
Прямые известные подклассы:
HttpURLConnection, JarURLConnection

public abstract class URLConnection
extends Object

Абстрактный класс URLConnection является суперклассом всех классов, представляющих канал связи между приложением и URL. Экземпляры этого класса могут использоваться как для чтения, так и для записи в ресурс, на который ссылается URL. В общем случае создание соединения с URL — многоэтапный процесс:

openConnection() connect()
Изменение параметров, влияющих на соединение с удалённым ресурсом. Взаимодействие с ресурсом; запросы к полям заголовка и содержимому.
---------------------------->
время
  1. Объект соединения создаётся путём вызова метода openConnection на объекте URL.
  2. Настраиваются параметры и общие свойства запроса.
  3. Производится фактическое соединение с удалённым объектом, используя метод connect.
  4. Удалённый объект становится доступным. Можно получить доступ к полям заголовка и содержимому удалённого объекта.

Параметры настройки изменяются с помощью следующих методов:

  • setAllowUserInteraction
  • setDoInput
  • setDoOutput
  • setIfModifiedSince
  • setUseCaches

а общие свойства запроса изменяются с помощью метода:

  • setRequestProperty

Значения по умолчанию для параметров AllowUserInteraction и UseCaches могут быть установлены с помощью методов setDefaultAllowUserInteraction и setDefaultUseCaches.

Каждый из перечисленных set методов имеет соответствующий get метод для получения значения параметра или общего свойства запроса. Конкретные параметры и общие свойства запроса зависят от протокола.

После установления соединения с удалённым объектом для доступа к полям заголовка и содержимому используются следующие методы:

  • getContent
  • getHeaderField
  • getInputStream
  • getOutputStream

Некоторые поля заголовка используются часто. Методы:

  • getContentEncoding
  • getContentLength
  • getContentType
  • getDate
  • getExpiration
  • getLastModifed

обеспечивают удобный доступ к этим полям. Метод getContentType используется методом getContent для определения типа удалённого объекта; подклассы могут посчитать удобным переопределение метода getContentType.

В большинстве случаев можно проигнорировать все параметры до соединения и общие свойства запроса: значения по умолчанию для них разумны. Для большинства клиентов этого интерфейса интересны только два метода: getInputStream и getContent, которые дублируются в классе URL удобными методами.

Дополнительную информацию о свойствах запроса и полях заголовка подключения http можно найти по адресу:

http://www.ietf.org/rfc/rfc2616.txt
Вызов методов close() на объектах InputStream или OutputStream объекта URLConnection после запроса может освободить сетевые ресурсы, связанные с этим экземпляром, если протокол не предписывает иное поведение.
С тех пор как:
JDK1.0
См. также:
URL.openConnection(), connect(), getContent(), getContentEncoding(), getContentLength(), getContentType(), getDate(), getExpiration(), getHeaderField(int), getHeaderField(java.lang.String), getInputStream(), getLastModified(), getOutputStream(), setAllowUserInteraction(boolean), setDefaultUseCaches(boolean), setDoInput(boolean), setDoOutput(boolean), setIfModifiedSince(long), setRequestProperty(java.lang.String, java.lang.String), setUseCaches(boolean)

Поля

Модификатор и тип Поле и описание
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 URLConnection(URL url)

Создаёт соединение с указанным URL.

Методы

Модификатор и тип Метод и описание
void addRequestProperty(String key, String value)

Добавляет свойство запроса, заданное парой ключ-значение.

abstract void connect()

Открывает ссылку на ресурс, указанный этим URL, если такое соединение еще не установлено.

boolean getAllowUserInteraction()

Возвращает значение поля allowUserInteraction для этого объекта.

int getConnectTimeout()

Возвращает значение таймаута подключения.

Object getContent()

Получает содержимое этого URL-соединения.

Object getContent(Class[] classes)

Получает содержимое этого 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(String key)

Устарело.

Следует использовать метод getRequestProperty, специфичный для экземпляра, после получения соответствующего экземпляра URLConnection.

boolean getDefaultUseCaches()

Возвращает значение флага URLConnection объекта useCaches по умолчанию.

boolean getDoInput()

Возвращает значение флага URLConnection этого объекта doInput.

boolean getDoOutput()

Возвращает значение флага URLConnection этого объекта doOutput.

long getExpiration()

Возвращает значение поля заголовка expires.

static FileNameMap getFileNameMap()

Загружает карту имен файлов (таблицу MIME) из файла данных.

String getHeaderField(int n)

Возвращает значение для n-го поля заголовка.

String getHeaderField(String name)

Возвращает значение поля заголовка с указанным именем.

long getHeaderFieldDate(String name, long Default)

Возвращает значение указанного поля, разобранного как дата.

int getHeaderFieldInt(String name, int Default)

Возвращает значение указанного поля, разобранного как число.

String getHeaderFieldKey(int n)

Возвращает ключ для n-го поля заголовка.

long getHeaderFieldLong(String name, long Default)

Возвращает значение указанного поля, разобранного как число.

Map<String,List<String>> getHeaderFields()

Возвращает неизменяемую карту полей заголовков.

long getIfModifiedSince()

Возвращает значение поля ifModifiedSince этого объекта.

InputStream getInputStream()

Возвращает поток ввода, читающий из этого открытого соединения.

long getLastModified()

Возвращает значение поля заголовка last-modified.

OutputStream getOutputStream()

Возвращает поток вывода, записывающий в это соединение.

Permission getPermission()

Возвращает объект разрешения, представляющий разрешение, необходимое для установления соединения, представленного этим объектом.

int getReadTimeout()

Возвращает значение таймаута чтения.

Map<String,List<String>> getRequestProperties()

Возвращает неизменяемую карту общих свойств запроса для этого соединения.

String getRequestProperty(String key)

Возвращает значение общего свойства запроса с указанным именем для этого соединения.

URL getURL()

Возвращает значение поля URLConnection этого объекта URL.

boolean getUseCaches()

Возвращает значение поля URLConnection этого объекта useCaches.

static String guessContentTypeFromName(String fname)

Попытка определить тип содержимого объекта на основе указанной части "файла" URL.

static String guessContentTypeFromStream(InputStream is)

Попытка определить тип потока ввода на основе символов в начале потока ввода.

void setAllowUserInteraction(boolean allowuserinteraction)

Устанавливает значение поля allowUserInteraction этого объекта URLConnection.

void setConnectTimeout(int timeout)

Устанавливает заданное значение таймаута в миллисекундах для открытия канала связи с ресурсом, указанным в этом URLConnection.

static void setContentHandlerFactory(ContentHandlerFactory fac)

Устанавливает ContentHandlerFactory приложения.

static void setDefaultAllowUserInteraction(boolean defaultallowuserinteraction)

Устанавливает значение по умолчанию поля allowUserInteraction для всех будущих объектов URLConnection до указанного значения.

static void setDefaultRequestProperty(String key, String value)

Устарело.

Следует использовать метод setRequestProperty, специфичный для экземпляра, после получения соответствующего экземпляра URLConnection. Вызов этого метода не повлияет.

void setDefaultUseCaches(boolean defaultusecaches)

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

void setDoInput(boolean doinput)

Устанавливает значение поля doInput для этого объекта URLConnection до указанного значения.

void setDoOutput(boolean dooutput)

Устанавливает значение поля doOutput для этого объекта URLConnection до указанного значения.

static void setFileNameMap(FileNameMap map)

Устанавливает FileNameMap.

void setIfModifiedSince(long ifmodifiedsince)

Устанавливает значение поля ifModifiedSince этого объекта URLConnection до указанного значения.

void setReadTimeout(int timeout)

Устанавливает таймаут чтения на указанное значение в миллисекундах.

void setRequestProperty(String key, String value)

Устанавливает общее свойство запроса.

void setUseCaches(boolean usecaches)

Устанавливает значение поля useCaches этого объекта URLConnection до указанного значения.

String toString()

Возвращает представление String этого URL-соединения.

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

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

Поля

url

protected URL url

URL представляет удалённый объект в сети Интернет, к которому открыто это соединение.

Значение этого поля можно получить с помощью метода getURL.

Значение по умолчанию этой переменной — значение аргумента URL в конструкторе URLConnection.

См. также:
getURL(), url

doInput

protected boolean doInput

Эта переменная устанавливается методом setDoInput. Её значение возвращается методом getDoInput.

Соединение с URL может быть использовано для ввода и/или вывода. Установка флага doInput в значение true указывает, что приложение намерено читать данные из соединения с URL.

Значение по умолчанию этого поля — true.

См. также:
getDoInput(), setDoInput(boolean)

doOutput

protected boolean doOutput

Эта переменная устанавливается методом setDoOutput. Её значение возвращается методом getDoOutput.

Соединение с URL может быть использовано для ввода и/или вывода. Установка флага doOutput в значение true указывает, что приложение намерено записывать данные в соединение с URL.

Значение по умолчанию этого поля — false.

См. также:
getDoOutput(), setDoOutput(boolean)

allowUserInteraction

protected boolean allowUserInteraction

Если true, это URL рассматривается в контексте, в котором имеет смысл разрешить пользовательские взаимодействия, такие как всплывающее диалоговое окно аутентификации. Если false, то пользовательское взаимодействие запрещено.

Значение этого поля можно установить с помощью метода setAllowUserInteraction. Его значение возвращается методом getAllowUserInteraction. Значение по умолчанию — значение аргумента в последнем вызове метода setDefaultAllowUserInteraction.

См. также:
getAllowUserInteraction(), setAllowUserInteraction(boolean), setDefaultAllowUserInteraction(boolean)

useCaches

protected boolean useCaches

Если true, протокол разрешено использовать кэширование всякий раз, когда это возможно. Если false, протокол должен всегда пытаться получить свежую копию объекта.

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

Значение по умолчанию — значение, заданное в последнем вызове метода setDefaultUseCaches.

См. также:
setUseCaches(boolean), getUseCaches(), setDefaultUseCaches(boolean)

ifModifiedSince

protected long ifModifiedSince

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

ненулевое значение задаёт время в миллисекундах с начала эпохи (1 января 1970, по Гринвичу). Объект извлекается только в случае его изменения позже указанного момента.

Эта переменная устанавливается методом setIfModifiedSince. Её значение возвращается методом getIfModifiedSince.

Значение по умолчанию этого поля — 0, что указывает на то, что загрузка должна всегда выполняться.

См. также:
getIfModifiedSince(), setIfModifiedSince(long)

connected

protected boolean connected

Если false, этот объект соединения не установил канал связи с указанным URL. Если true, канал связи установлен.

Конструкторы

URLConnection

protected URLConnection(URL url)

Создаёт соединение с указанным URL. Соединение с объектом, на который ссылается URL, не создаётся.

Параметры:
url — указанный URL.

Методы

getFileNameMap

public static FileNameMap getFileNameMap()

Загружает карту имён файлов (таблицу mime) из файла данных. Сначала будет попытка загрузить пользовательскую таблицу, определённую свойством "content.types.user.table". Если это не удастся, будет попытка загрузить встроенную таблицу по умолчанию.

Возвращает:
FileNameMap
Начиная с:
1.2
См. также:
setFileNameMap(java.net.FileNameMap)

setFileNameMap

public static void setFileNameMap(FileNameMap map)

Устанавливает FileNameMap.

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

Параметры:
map — FileNameMap для установки
Исключения:
SecurityException — если менеджер безопасности существует и его метод checkSetFactory не позволяет выполнить операцию.
Начиная с:
1.2
См. также:
SecurityManager.checkSetFactory(), getFileNameMap()

connect

public abstract void connect()
                      throws IOException

Открывает канал связи с ресурсом, на который ссылается этот URL, если такое соединение ещё не установлено.

Если метод connect вызывается, когда соединение уже открыто (что показано полем connected со значением true), вызов игнорируется.

Объекты URLConnection проходят две фазы: сначала они создаются, затем они подключаются. После создания и до подключения можно задать различные параметры (например, doInput и UseCaches). После подключения попытка установки параметров становится ошибкой. Операции, зависящие от установленного подключения, например, getContentLength, неявно выполняют подключение, если необходимо.

Исключения:
SocketTimeoutException — если таймаут истекает перед установлением соединения
IOException — если при открытии соединения произошла ошибка ввода-вывода.
См. также:
connected, getConnectTimeout(), setConnectTimeout(int)

setConnectTimeout

public void setConnectTimeout(int timeout)

Устанавливает значение таймаута подключения в миллисекундах для открытия канала связи с ресурсом, на который ссылается этот URLConnection. Если таймаут истекает до установления соединения, генерируется исключение java.net.SocketTimeoutException. Таймаут 0 интерпретируется как бесконечный таймаут.

Некоторые нестандартные реализации этого метода могут игнорировать заданный таймаут. Чтобы увидеть установленный таймаут подключения, вызовите getConnectTimeout().

Параметры:
timeout — значение таймаута подключения в миллисекундах
Исключения:
IllegalArgumentException — если параметр таймаута отрицательный
Начиная с:
1.5
См. также:
getConnectTimeout(), connect()

getConnectTimeout

public int getConnectTimeout()

Возвращает установленное значение таймаута подключения.

Возвращаемое значение 0 означает, что параметр отключен (т.е., таймаут бесконечен).

Возвращает:
значение таймаута подключения в миллисекундах
Начиная с:
1.5
См. также:
setConnectTimeout(int), connect()

setReadTimeout

public void setReadTimeout(int timeout)

Устанавливает таймаут чтения в миллисекундах. ненулевое значение определяет таймаут при чтении из потока ввода при установлении соединения с ресурсом. Если таймаут истекает до получения данных для чтения, генерируется исключение java.net.SocketTimeoutException. Таймаут 0 интерпретируется как бесконечный таймаут.

Некоторые нестандартные реализации этого метода игнорируют заданный таймаут. Чтобы увидеть установленный таймаут чтения, вызовите getReadTimeout().

Параметры:
timeout — значение таймаута чтения в миллисекундах
Исключения:
IllegalArgumentException — если параметр таймаута отрицательный
Начиная с:
1.5
См. также:
getReadTimeout(), InputStream.read()

getReadTimeout

public int getReadTimeout()

Возвращает установленное значение таймаута чтения. Возвращаемое значение 0 означает, что параметр отключён (т.е., таймаут бесконечен).

Возвращает:
значение таймаута чтения в миллисекундах
Начиная с:
1.5
См. также:
setReadTimeout(int), InputStream.read()

getURL

public URL getURL()

Возвращает значение поля URLConnection этого URL.

Возвращает:
значение поля URLConnection этого URL.
См. также:
url

getContentLength

public int getContentLength()

Возвращает значение поля заголовка content-length.

Примечание: getContentLengthLong() предпочтительнее этого метода, так как он возвращает long и поэтому более портативен.

Возвращает:
длину содержимого ресурса, на который ссылается URL этого соединения, -1 если длина содержимого неизвестна или превышает Integer.MAX_VALUE.

getContentLengthLong

public long getContentLengthLong()

Возвращает значение поля заголовка content-length как long.

Возвращает:
длина содержимого ресурса, на который ссылается URL этого соединения, или -1, если длина содержимого неизвестна.
С:
7.0

getContentType

public String getContentType()

Возвращает значение поля заголовка content-type.

Возвращает:
тип содержимого ресурса, на который ссылается URL, или null, если неизвестен.
См. также:
getHeaderField(java.lang.String)

getContentEncoding

public String getContentEncoding()

Возвращает значение поля заголовка content-encoding.

Возвращает:
кодировку содержимого ресурса, на который ссылается URL, или null, если неизвестна.
См. также:
getHeaderField(java.lang.String)

getExpiration

public long getExpiration()

Возвращает значение поля заголовка expires.

Возвращает:
дата истечения срока действия ресурса, на который ссылается этот URL, или 0, если неизвестна. Значение представляет собой количество миллисекунд, прошедших с 1 января 1970 года по Гринвичу.
См. также:
getHeaderField(java.lang.String)

getDate

public long getDate()

Возвращает значение поля заголовка date.

Возвращает:
дата отправки ресурса, на который ссылается URL, или 0, если неизвестна. Возвращаемое значение — количество миллисекунд, прошедших с 1 января 1970 года по Гринвичу.
См. также:
getHeaderField(java.lang.String)

getLastModified

public long getLastModified()

Возвращает значение поля заголовка last-modified. Результат — количество миллисекунд, прошедших с 1 января 1970 года по Гринвичу.

Возвращает:
дата последнего изменения ресурса, на который ссылается этот URLConnection, или 0, если неизвестна.
См. также:
getHeaderField(java.lang.String)

getHeaderField

public String getHeaderField(String name)

Возвращает значение поля заголовка с заданным именем.

Если вызывается для соединения, которое устанавливает один и тот же заголовок несколько раз с потенциально разными значениями, возвращается только последнее значение.

Параметры:
name - имя поля заголовка.
Возвращает:
значение поля заголовка с заданным именем, или null, если такого поля в заголовке нет.

getHeaderFields

public Map<String,List<String>> getHeaderFields()

Возвращает неизменяемую карту полей заголовка. Ключами карты являются строки, представляющие имена полей заголовка ответа. Каждый элемент карты — это неизменяемый список строк, представляющий соответствующие значения поля.

Возвращает:
карта полей заголовка
С:
1.4

getHeaderFieldInt

public int getHeaderFieldInt(String name,
                             int Default)

Возвращает значение указанного поля, интерпретированное как число.

Такая форма getHeaderField существует, потому что некоторые типы соединений (например, http-ng) имеют предварительно проанализированные заголовки. Классы для этого типа соединения могут переопределять этот метод и прерывать анализ.

Параметры:
name - имя поля заголовка.
Default - значение по умолчанию.
Возвращает:
значение указанного поля, проанализированное как целое число. Если поле отсутствует или имеет неправильный формат, возвращается значение Default.

getHeaderFieldLong

public long getHeaderFieldLong(String name,
                               long Default)

Возвращает значение указанного поля, интерпретированное как число.

Такая форма getHeaderField существует, потому что некоторые типы соединений (например, http-ng) имеют предварительно проанализированные заголовки. Классы для этого типа соединения могут переопределять этот метод и прерывать анализ.

Параметры:
name - имя поля заголовка.
Default - значение по умолчанию.
Возвращает:
значение указанного поля, проанализированное как число типа long. Если поле отсутствует или имеет неправильный формат, возвращается значение Default.
С:
7.0

getHeaderFieldDate

public long getHeaderFieldDate(String name,
                               long Default)

Возвращает значение указанного поля, интерпретированное как дата. Результат — количество миллисекунд, прошедших с 1 января 1970 года по Гринвичу, представленное указанным полем.

Такая форма getHeaderField существует, потому что некоторые типы соединений (например, http-ng) имеют предварительно проанализированные заголовки. Классы для этого типа соединения могут переопределять этот метод и прерывать анализ.

Параметры:
name - имя поля заголовка.
Default - значение по умолчанию.
Возвращает:
значение поля, проанализированное как дата. Если поле отсутствует или имеет неправильный формат, возвращается значение аргумента Default.

getHeaderFieldKey

public String getHeaderFieldKey(int n)

Возвращает ключ для n-го поля заголовка. Возвращает null, если полей меньше n+1.

Параметры:
n - индекс, где n>=0
Возвращает:
ключ для n-го поля заголовка, или null, если полей меньше n+1.

getHeaderField

public String getHeaderField(int n)

Возвращает значение для n-го поля заголовка. Возвращает null, если полей меньше n+1.

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

Параметры:
n - индекс, где n>=0
Возвращает:
значение n-го поля заголовка или null, если полей меньше n+1.
См. также:
getHeaderFieldKey(int)

getContent

public Object getContent()
                  throws IOException

Извлекает содержимое этого URL-соединения.

Этот метод сначала определяет тип содержимого объекта, вызвав метод getContentType. Если приложение впервые сталкивается с этим типом содержимого, создается обработчик содержимого для этого типа:

  1. Если приложение настроило фабрику обработчиков содержимого с помощью метода setContentHandlerFactory, вызывается метод createContentHandler этой фабрики со значением типа содержимого в качестве аргумента; результатом является обработчик содержимого для этого типа.
  2. Если фабрика обработчиков содержимого еще не настроена, или если метод createContentHandler фабрики возвращает null, приложение загружает класс с именем:
    sun.net.www.content.<contentType>
    , где <contentType> формируется из строки типа содержимого, заменяя все символы косой черты на period ('.') и все остальные символы, не являющиеся буквенно-цифровыми, на символ подчеркивания '_'. Буквенно-цифровые символы — это 26 прописных букв ASCII от 'A' до 'Z', 26 строчных букв ASCII от 'a' до 'z', и 10 цифр ASCII от '0' до '9'. Если указанный класс не существует или не является подклассом ContentHandler, выбрасывается исключение UnknownServiceException.
Возвращает:
извлеченный объект. Оператор instanceof должен использоваться для определения конкретного типа возвращаемого объекта.
Исключения:
IOException - если при получении содержимого произошла ошибка ввода-вывода.
UnknownServiceException - если протокол не поддерживает тип содержимого.
См. также:
ContentHandlerFactory.createContentHandler(java.lang.String), getContentType(), setContentHandlerFactory(java.net.ContentHandlerFactory)

getContent

public Object getContent(Class[] classes)
                  throws IOException

Извлекает содержимое этого URL-соединения.

Параметры:
classes - массив Class указывающий на запрашиваемые типы
Возвращает:
извлеченный объект, который является первым совпадением указанного в массиве классов типа. null, если ни один из запрашиваемых типов не поддерживается. Оператор instanceof должен использоваться для определения конкретного типа возвращаемого объекта.
Исключения:
IOException - если при получении содержимого произошла ошибка ввода-вывода.
UnknownServiceException - если протокол не поддерживает тип содержимого.
С:
1.3
См. также:
getContent(), ContentHandlerFactory.createContentHandler(java.lang.String), getContent(java.lang.Class[]), setContentHandlerFactory(java.net.ContentHandlerFactory)

getPermission

public Permission getPermission()
                         throws IOException

Возвращает объект разрешения, представляющий разрешение, необходимое для подключения, представленного этим объектом. Этот метод возвращает null, если для создания подключения не требуется разрешение. По умолчанию этот метод возвращает java.security.AllPermission. Подклассы должны переопределять этот метод и возвращать разрешение, которое лучше всего представляет разрешение, необходимое для подключения к URL. Например, URLConnection, представляющий file: URL, вернет объект java.io.FilePermission.

Возвращаемое разрешение может зависеть от состояния подключения. Например, разрешение перед подключением может отличаться от разрешения после подключения. Например, HTTP-сервер, скажем, foo.com, может перенаправить подключение на другой хост, скажем, bar.com. Перед подключением разрешение, возвращаемое подключением, будет представлять разрешение, необходимое для подключения к foo.com, а разрешение, возвращаемое после подключения, будет к bar.com.

Разрешения обычно используются для двух целей: для защиты кэшей объектов, полученных через URLConnections, и для проверки права получателя узнать о конкретном URL. В первом случае разрешение должно быть получено после получения объекта. Например, в HTTP-подключении это будет представлять разрешение на подключение к хосту, из которого в конечном итоге были извлечены данные. Во втором случае разрешение должно быть получено и проверено перед подключением.

Возвращает:
объект разрешения, представляющий разрешение, необходимое для создания подключения, представленного этим URLConnection.
Имеет:
IOException - если вычисление разрешения требует сетевого или файлового ввода-вывода, и при его вычислении произошла ошибка.

getInputStream

public InputStream getInputStream()
                           throws IOException

Возвращает поток ввода, который считывает данные из этого открытого подключения. SocketTimeoutException может быть сгенерирован при чтении из возвращаемого потока ввода, если таймаут чтения истекает до того, как данные станут доступны для чтения.

Возвращает:
поток ввода, который считывает данные из этого открытого подключения.
Имеет:
IOException - если при создании потока ввода произошла ошибка ввода-вывода.
UnknownServiceException - если протокол не поддерживает ввод.
См. также:
setReadTimeout(int), getReadTimeout()

getOutputStream

public OutputStream getOutputStream()
                             throws IOException

Возвращает поток вывода, который записывает данные в это подключение.

Возвращает:
поток вывода, который записывает данные в это подключение.
Имеет:
IOException - если при создании потока вывода произошла ошибка ввода-вывода.
UnknownServiceException - если протокол не поддерживает вывод.

toString

public String toString()

Возвращает строковое представление этого подключения URL.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого URLConnection.

setDoInput

public void setDoInput(boolean doinput)

Устанавливает значение поля doInput для этого URLConnection на указанное значение.

Подключение URL может использоваться для ввода и/или вывода. Установите флаг DoInput в значение true, если вы планируете использовать подключение URL для ввода, и в значение false, если нет. По умолчанию значение true.

Параметры:
doinput - новое значение.
Имеет:
IllegalStateException - если уже подключено
См. также:
doInput, getDoInput()

getDoInput

public boolean getDoInput()

Возвращает значение флага URLConnection этого doInput.

Возвращает:
значение флага URLConnection этого doInput.
См. также:
setDoInput(boolean)

setDoOutput

public void setDoOutput(boolean dooutput)

Устанавливает значение поля doOutput для этого URLConnection на указанное значение.

Подключение URL может использоваться для ввода и/или вывода. Установите флаг DoOutput в значение true, если вы планируете использовать подключение URL для вывода, и в значение false, если нет. По умолчанию значение false.

Параметры:
dooutput - новое значение.
Имеет:
IllegalStateException - если уже подключено
См. также:
getDoOutput()

getDoOutput

public boolean getDoOutput()

Возвращает значение флага URLConnection этого doOutput.

Возвращает:
значение флага URLConnection этого doOutput.
См. также:
setDoOutput(boolean)

setAllowUserInteraction

public void setAllowUserInteraction(boolean allowuserinteraction)

Устанавливает значение поля allowUserInteraction этого URLConnection.

Параметры:
allowuserinteraction - новое значение.
Имеет:
IllegalStateException - если уже подключено
См. также:
getAllowUserInteraction()

getAllowUserInteraction

public boolean getAllowUserInteraction()

Возвращает значение поля allowUserInteraction для этого объекта.

Возвращает:
значение поля allowUserInteraction для этого объекта.
См. также:
setAllowUserInteraction(boolean)

setDefaultAllowUserInteraction

public static void setDefaultAllowUserInteraction(boolean defaultallowuserinteraction)

Устанавливает значение поля allowUserInteraction по умолчанию для всех будущих объектов URLConnection на указанное значение.

Параметры:
defaultallowuserinteraction - новое значение.
См. также:
getDefaultAllowUserInteraction()

getDefaultAllowUserInteraction

public static boolean getDefaultAllowUserInteraction()

Возвращает значение поля allowUserInteraction по умолчанию.

Это значение «прилипает», будучи частью статического состояния всех URLConnections. Этот флаг применяется к следующему и всем последующим созданным URLConnections.

Возвращает:
значение поля allowUserInteraction по умолчанию.
См. также:
setDefaultAllowUserInteraction(boolean)

setUseCaches

public void setUseCaches(boolean usecaches)

Устанавливает значение поля useCaches этого URLConnection на указанное значение.

Некоторые протоколы кэшируют документы. Иногда важно иметь возможность «пробиться сквозь» и проигнорировать кэши (например, кнопка «перезагрузить» в браузере). Если флаг UseCaches для подключения имеет значение true, подключение разрешено использовать все имеющиеся кэши. Если false, кэши игнорируются. Значение по умолчанию взято из DefaultUseCaches, которое равно true по умолчанию.

Параметры:
usecaches - значение, указывающее, разрешено ли кэширование
Имеет:
IllegalStateException - если уже подключено
См. также:
getUseCaches()

getUseCaches

public boolean getUseCaches()

Возвращает значение поля URLConnection этого useCaches.

Возвращает:
значение поля URLConnection этого useCaches.
См. также:
setUseCaches(boolean)

setIfModifiedSince

public void setIfModifiedSince(long ifmodifiedsince)

Устанавливает значение поля ifModifiedSince этого URLConnection на указанное значение.

Параметры:
ifmodifiedsince - новое значение.
Имеет:
IllegalStateException - если уже подключено
См. также:
getIfModifiedSince()

getIfModifiedSince

public long getIfModifiedSince()

Возвращает значение поля ifModifiedSince этого объекта.

Возвращает:
значение поля ifModifiedSince этого объекта.
См. также:
setIfModifiedSince(long)

getDefaultUseCaches

public boolean getDefaultUseCaches()

Возвращает значение флага URLConnection по умолчанию для useCaches.

Это значение «прилипает», будучи частью статического состояния всех URLConnections. Этот флаг применяется к следующему и всем последующим созданным URLConnections.

Возвращает:
значение флага URLConnection по умолчанию для useCaches.
См. также:
setDefaultUseCaches(boolean)

setDefaultUseCaches

public void setDefaultUseCaches(boolean defaultusecaches)

Устанавливает значение поля useCaches по умолчанию на указанное значение.

Параметры:
defaultusecaches - новое значение.
См. также:
getDefaultUseCaches()

setRequestProperty

public void setRequestProperty(String key,
                               String value)

Устанавливает общее свойство запроса. Если свойство с ключом уже существует, перезаписывает его значение новым значением.

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

Параметры:
key - ключевое слово, по которому известен запрос (например, "Accept").
value - ассоциированное с ним значение.
Имеет:
IllegalStateException - если уже подключено
NullPointerException - если ключ null
См. также:
getRequestProperty(java.lang.String)

addRequestProperty

public void addRequestProperty(String key,
                               String value)

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

Параметры:
key - ключевое слово, по которому известен запрос (например, "Accept").
value - значение, связанное с ним.
Исключения:
IllegalStateException - если уже подключено
NullPointerException - если ключ равен null
С:
1.4
См. также:
getRequestProperties()

getRequestProperty

public String getRequestProperty(String key)

Возвращает значение запрошенного свойства для этого подключения.

Параметры:
key - ключевое слово, по которому известен запрос (например, "Accept").
Возвращает:
значение указанного свойства запроса для этого соединения. Если ключ равен null, возвращается null.
Исключения:
IllegalStateException - если уже подключено
См. также:
setRequestProperty(java.lang.String, java.lang.String)

getRequestProperties

public Map<String,List<String>> getRequestProperties()

Возвращает неизменяемую карту общих свойств запроса для этого подключения. Ключи карты — строки, представляющие имена полей заголовка запроса. Каждое значение карты — неизменяемый список строк, представляющий соответствующие значения полей.

Возвращает:
карта общих свойств запроса для этого подключения.
Исключения:
IllegalStateException - если уже подключено
С:
1.4

setDefaultRequestProperty

@Deprecated
public static void setDefaultRequestProperty(String key,
                                                         String value)

Устарело. Следует использовать метод setRequestProperty для конкретного экземпляра URLConnection после получения соответствующего экземпляра URLConnection. Вызов этого метода не окажет никакого влияния.

Устанавливает значение по умолчанию для общего свойства запроса. Когда создается URLConnection, он инициализируется этими свойствами.

Параметры:
key - ключевое слово, по которому известен запрос (например, "Accept").
value - значение, связанное с ключом.
См. также:
setRequestProperty(java.lang.String,java.lang.String), getDefaultRequestProperty(java.lang.String)

getDefaultRequestProperty

@Deprecated
public static String getDefaultRequestProperty(String key)

Устарело. Следует использовать метод getRequestProperty для конкретного экземпляра URLConnection после получения соответствующего экземпляра URLConnection.

Возвращает значение свойства запроса по умолчанию. Свойства запроса по умолчанию устанавливаются для каждого подключения.

Параметры:
key - ключевое слово, по которому известен запрос (например, "Accept").
Возвращает:
значение свойства запроса по умолчанию для указанного ключа.
См. также:
getRequestProperty(java.lang.String), setDefaultRequestProperty(java.lang.String, java.lang.String)

setContentHandlerFactory

public static void setContentHandlerFactory(ContentHandlerFactory fac)

Устанавливает ContentHandlerFactory приложения. Его можно вызвать не более одного раза приложением.

Экземпляр ContentHandlerFactory используется для создания обработчика содержимого из типа содержимого

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

Параметры:
fac - требуемый фабрика.
Исключения:
Error - если фабрика уже определена.
SecurityException - если менеджер безопасности существует и его метод checkSetFactory не разрешает операцию.
См. также:
ContentHandlerFactory, getContent(), SecurityManager.checkSetFactory()

guessContentTypeFromName

public static String guessContentTypeFromName(String fname)

Попытка определить тип содержимого объекта на основе указанной части "файл" URL-адреса. Это удобный метод, который могут использовать подклассы, переопределяющие метод getContentType.

Параметры:
fname - имя файла.
Возвращает:
предположение о типе содержимого объекта на основе его имени файла.
См. также:
getContentType()

guessContentTypeFromStream

public static String guessContentTypeFromStream(InputStream is)
                                         throws IOException

Попытка определить тип входного потока на основе символов в начале входного потока. Этот метод могут использовать подклассы, переопределяющие метод getContentType.

В идеале эта процедура не нужна. Но многие серверы http возвращают неверный тип содержимого; кроме того, существует много нестандартных расширений. Прямое изучение байтов для определения типа содержимого часто более точно, чем вера в тип содержимого, заявленному сервером http.

Параметры:
is - входной поток, поддерживающий метки.
Возвращает:
предположение о типе содержимого или null, если тип определить невозможно.
Исключения:
IOException - если при чтении входного потока произошла ошибка ввода-вывода.
См. также:
InputStream.mark(int), InputStream.markSupported(), getContentType()

© 1993, 2020, 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.

Spec-Zone.ru

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