HTTP 请求和响应的头信息。
在某些情况下,头信息是不可变的
-
HttpRequest 和 HttpClientResponse 永远具有不可变的头信息。
-
HttpResponse 和 HttpClientRequest 从写入体开始就具有不可变的头信息。
在这些情况下,修改方法会抛出异常。
对于所有对 HTTP 头的操作,头名称不区分大小写。
要设置头信息的值,请使用 set()
方法
request.headers.set(HttpHeaders.cacheControlHeader,
'max-age=3600, must-revalidate');
要检索头信息的值,请使用 value()
方法
print(request.headers.value(HttpHeaders.userAgentHeader));
HttpHeaders
对象为每个名称保存一个值列表,因为标准允许这样做。在大多数情况下,一个名称只有一个值,最常见的操作模式是使用 set()
来设置值,并使用 value()
来检索值。
构造函数
属性
- chunkedTransferEncoding ↔ bool
- 连接是否使用分块传输编码。getter/setter 对
- contentLength ↔ int
- 如果有的话,为 contentLengthHeader 头指定的值。getter/setter 对
- contentType ↔ ContentType?
- 如果有的话,为 contentTypeHeader 头指定的 ContentType。getter/setter 对
- date ↔ DateTime?
- 如果有的话,dateHeader 头指定的日期。getter/setter 对
- expires ↔ DateTime?
- 如果有的话,expiresHeader 头指定的日期和时间。getter/setter 对
- hashCode → int
- 此对象的哈希值。无 setter继承自
- host ↔ String?
- 如果有的话,为 hostHeader 头指定的值。getter/setter 对
- ifModifiedSince ↔ DateTime?
- 如果有的话,为 ifModifiedSinceHeader 头指定的日期和时间。getter/setter 对
- persistentConnection ↔ bool
- 连接是否持久(保持活跃)。getter/setter 对
- port ↔ int?
- 如果有的话,为 hostHeader 头指定的端口号值。getter/setter 对
- runtimeType → Type
- 对象运行时类型的表示。无 setter继承自
方法
-
add(
String name, Object value, {bool preserveHeaderCase = false}) → void - 添加头值。
-
clear(
) → void - 删除所有头部。
-
forEach(
void action(String name, List< String> values)) → void - 对每个头部执行
action
。 -
noFolding(
String name) → void - 禁用在发送 HTTP 头时对名为
name
的头的折叠。 -
noSuchMethod(
Invocation invocation) → dynamic - 当访问不存在的方法或属性时被调用。继承的
-
remove(
String name, Object value) → void - 删除特定头名的值。
-
removeAll(
String name) → void - 删除指定头名的所有值。
-
set(
String name, Object value, {bool preserveHeaderCase = false}) → void - 将头
name
设置为value
。 -
toString(
) → String - 此对象的字符串表示。继承的
-
value(
String name) → String? - 用于单值头部的便利方法。
运算符
常量
- acceptCharsetHeader → const String
- acceptEncodingHeader → const String
- acceptHeader → const String
- acceptLanguageHeader → const String
- acceptRangesHeader → const String
- accessControlAllowCredentialsHeader → const String
- accessControlAllowHeadersHeader → const String
- accessControlAllowMethodsHeader → const String
- accessControlAllowOriginHeader → const String
- accessControlExposeHeadersHeader → const String
- accessControlMaxAgeHeader → const String
- accessControlRequestHeadersHeader → const String
- accessControlRequestMethodHeader → const String
- ageHeader → const String
- allowHeader → const String
- cacheControlHeader → const String
- connectionHeader → const String
- contentDisposition → const String
- contentEncodingHeader → const String
- contentLanguageHeader → const String
- contentLengthHeader → const String
- contentLocationHeader → const String
- contentMD5Header → const String
- contentRangeHeader → const String
- contentTypeHeader → const String
- dateHeader → const String
-
entityHeaders → const List<
String> - etagHeader → const String
- expectHeader → const String
- expiresHeader → const String
- fromHeader → const String
-
generalHeaders → const List<
String> - hostHeader → const String
- ifMatchHeader → const String
- ifModifiedSinceHeader → const String
- ifNoneMatchHeader → const String
- ifRangeHeader → const String
- ifUnmodifiedSinceHeader → const String
- lastModifiedHeader → const String
- locationHeader → const String
- maxForwardsHeader → const String
- pragmaHeader → const String
- proxyAuthenticateHeader → const String
- proxyAuthorizationHeader → const String
- rangeHeader → const String
- refererHeader → const String
-
requestHeaders → const List<
String> -
responseHeaders → const List<
String> - retryAfterHeader → const String
- serverHeader → const String
- setCookieHeader → const String
- teHeader → const String
- trailerHeader → const String
- transferEncodingHeader → const String
- upgradeHeader → const String
- userAgentHeader → const String
- varyHeader → const String
- viaHeader → const String
- warningHeader → const String
- wwwAuthenticateHeader → const String