Класс HttpHeaders
Заголовки для HTTP-запросов и ответов.
В некоторых ситуациях заголовки являются неизменяемыми:
-
HttpRequest и HttpClientResponse всегда имеют неизменяемые заголовки.
-
HttpResponse и HttpClientRequest имеют неизменяемые заголовки с момента записи тела.
В этих ситуациях методы изменения заголовков выбрасывают исключения.
Для всех операций с HTTP-заголовками имя заголовка нечувствительно к регистру.
Для установки значения заголовка используйте метод set().
request.headers.set(HttpHeaders.CACHE_CONTROL,
'max-age=3600, must-revalidate');
Для получения значения заголовка используйте метод value().
print(request.headers.value(HttpHeaders.USER_AGENT));
Объект HttpHeaders хранит список значений для каждого имени, как это разрешено стандартом. В большинстве случаев имя содержит только одно значение. Наиболее распространенный способ работы — использование set() для установки значения и value() для получения значения.
Константы
- ACCEPT → dynamic
-
"accept" - ACCEPT_CHARSET → dynamic
-
"accept-charset" - ACCEPT_ENCODING → dynamic
-
"accept-encoding" - ACCEPT_LANGUAGE → dynamic
-
"accept-language" - ACCEPT_RANGES → dynamic
-
"accept-ranges" - AGE → dynamic
-
"age" - ALLOW → dynamic
-
"allow" - AUTHORIZATION → dynamic
-
"authorization" - CACHE_CONTROL → dynamic
-
"cache-control" - CONNECTION → dynamic
-
"connection" - CONTENT_ENCODING → dynamic
-
"content-encoding" - CONTENT_LANGUAGE → dynamic
-
"content-language" - CONTENT_LENGTH → dynamic
-
"content-length" - CONTENT_LOCATION → dynamic
-
"content-location" - CONTENT_MD5 → dynamic
-
"content-md5" - CONTENT_RANGE → dynamic
-
"content-range" - CONTENT_TYPE → dynamic
-
"content-type" - COOKIE → dynamic
-
"cookie" - DATE → dynamic
-
"date" - ENTITY_HEADERS → dynamic
-
const [ALLOW, CONTENT_ENCODING, CONTENT_LANGUAGE, CONTENT_LENGTH, CONTENT_LOCATION, CONTENT_MD5, CONTENT_RANGE, CONTENT_TYPE, EXPIRES, LAST_MODIFIED] - ETAG → dynamic
-
"etag" - EXPECT → dynamic
-
"expect" - EXPIRES → dynamic
-
"expires" - FROM → dynamic
-
"from" - GENERAL_HEADERS → dynamic
-
const [CACHE_CONTROL, CONNECTION, DATE, PRAGMA, TRAILER, TRANSFER_ENCODING, UPGRADE, VIA, WARNING] - HOST → dynamic
-
"host" - IF_MATCH → dynamic
-
"if-match" - IF_MODIFIED_SINCE → dynamic
-
"if-modified-since" - IF_NONE_MATCH → dynamic
-
"if-none-match" - IF_RANGE → dynamic
-
"if-range" - IF_UNMODIFIED_SINCE → dynamic
-
"if-unmodified-since" - LAST_MODIFIED → dynamic
-
"last-modified" - LOCATION → dynamic
-
"location" - MAX_FORWARDS → dynamic
-
"max-forwards" - PRAGMA → dynamic
-
"pragma" - PROXY_AUTHENTICATE → dynamic
-
"proxy-authenticate" - PROXY_AUTHORIZATION → dynamic
-
"proxy-authorization" - RANGE → dynamic
-
"range" - REFERER → dynamic
-
"referer" - REQUEST_HEADERS → dynamic
-
const [ACCEPT, ACCEPT_CHARSET, ACCEPT_ENCODING, ACCEPT_LANGUAGE, AUTHORIZATION, EXPECT, FROM, HOST, IF_MATCH, IF_MODIFIED_SINCE, IF_NONE_MATCH, IF_RANGE, IF_UNMODIFIED_SINCE, MAX_FORWARDS, PROXY_AUTHO… - RESPONSE_HEADERS → dynamic
-
const [ACCEPT_RANGES, AGE, ETAG, LOCATION, PROXY_AUTHENTICATE, RETRY_AFTER, SERVER, VARY, WWW_AUTHENTICATE] - RETRY_AFTER → dynamic
-
"retry-after" - SERVER → dynamic
-
"server" - SET_COOKIE → dynamic
-
"set-cookie" - TE → dynamic
-
"te" - TRAILER → dynamic
-
"trailer" - TRANSFER_ENCODING → dynamic
-
"transfer-encoding" - UPGRADE → dynamic
-
"upgrade" - USER_AGENT → dynamic
-
"user-agent" - VARY → dynamic
-
"vary" - VIA → dynamic
-
"via" - WARNING → dynamic
-
"warning" - WWW_AUTHENTICATE → dynamic
-
"www-authenticate"
Конструкторы
- HttpHeaders()
Свойства
- chunkedTransferEncoding → bool чтение / запись
-
Получает и устанавливает значение заголовка сжатого перевода.
- contentLength → int чтение / запись
-
Получает и устанавливает значение заголовка длины содержимого.
- contentType → ContentType чтение / запись
-
Получает и устанавливает тип содержимого. Обратите внимание, что тип содержимого в заголовке будет обновлен только в том случае, если это поле установлено непосредственно. Изменение возвращаемого текущего значения не повлияет на него.
- date → DateTime чтение / запись
-
Получает и устанавливает дату. Значение этого свойства будет отражать заголовок 'date'.
- expires → DateTime чтение / запись
-
Получает и устанавливает дату истечения срока действия. Значение этого свойства будет отражать заголовок 'expires'.
- host → String чтение / запись
-
Получает и устанавливает часть имени хоста в заголовке 'host' для подключения.
- ifModifiedSince → DateTime чтение / запись
-
Получает и устанавливает дату "if-modified-since". Значение этого свойства будет отражать заголовок "if-modified-since".
- persistentConnection → bool чтение / запись
-
Получает и устанавливает значение заголовка постоянного подключения.
- port → int чтение / запись
-
Получает и устанавливает номер порта в заголовке 'host' для подключения.
- hashCode → int только для чтения, унаследовано
-
Хеш-код этого объекта.
- runtimeType → Type только для чтения, унаследовано
-
Представление типа объекта во время выполнения.
Операторы
- operator [](
String name) → List<String> -
Возвращает список значений для заголовка с именем
name. Если нет заголовка с указанным именем, возвращаетсяnull. - operator ==(
other) → bool унаследовано -
Оператор равенства.
Методы
- add(
String name, Object value) → void -
Добавляет значение заголовка. Заголовок с именем
nameполучит значениеvalueв свой список значений. Некоторые заголовки имеют единственное значение, и для них добавление значения заменит предыдущее значение. Если значение является объектом DateTime, будет применён формат даты HTTP. Если значение являетсяList, каждый элемент списка будет добавлен отдельно. Для всех остальных типов будет использован методtoString. - clear(
) → void -
Удаляет все заголовки. Некоторые заголовки содержат значения, предоставляемые системой, и для них значения, предоставляемые системой, по-прежнему будут добавлены в коллекцию значений заголовка.
- forEach(
void f(String name, List<String> values)) → void -
Перечисляет заголовки, применяя функцию
fк каждому заголовку. Имя заголовка, передаваемое вname, будет в нижнем регистре. - noFolding(
String name) → void -
Отключает сжатие для заголовка с именем
nameпри отправке HTTP-заголовка. По умолчанию несколько значений заголовков объединяются в одну строку заголовка, разделяя значения запятыми. Заголовок 'set-cookie' имеет отключение сжатия по умолчанию. - remove(
String name, Object value) → void -
Удаляет конкретное значение для имени заголовка. Некоторые заголовки содержат значения, предоставляемые системой, и для них значения, предоставляемые системой, по-прежнему будут добавлены в коллекцию значений заголовка.
- removeAll(
String name) → void -
Удаляет все значения для указанного имени заголовка. Некоторые заголовки содержат значения, предоставляемые системой, и для них значения, предоставляемые системой, по-прежнему будут добавлены в коллекцию значений заголовка.
- set(
String name, Object value) → void -
Устанавливает заголовок. Все значения заголовка с именем
nameбудут очищены перед добавлением значенияvalueв качестве его значения. - value(
String name) → String -
Удобный метод для получения значения однозначного заголовка. Если нет заголовка с заданным именем, возвращается
null. Если заголовок содержит более одного значения, выбрасывается исключение. - noSuchMethod(
Invocation invocation) → dynamic унаследовано -
Вызывается при обращении к несуществующему методу или свойству.
- toString(
) → String унаследовано -
Возвращает строковое представление этого объекта.
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-io/HttpHeaders-class.html