java.lang.Object
org.miaixz.bus.http.Headers
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionlong获取头部编码字节数static longcontentLength(Headers headers) 获取头部的 Content-Lengthstatic longcontentLength(Response response) 获取响应的 Content-Lengthboolean比较两个 Headers 对象是否相等获取指定名称的最后一个头部值获取指定名称的日期头部值getInstant(String name) 获取指定名称的 Instant 头部值static boolean检查响应是否包含消息体inthashCode()计算哈希码static booleanhasVaryAll(Headers responseHeaders) 检查是否存在 Vary: * 头部static booleanhasVaryAll(Response response) 检查是否存在 Vary: * 头部name(int index) 获取指定索引的头部名称names()获取头部名称集合创建新的 Builder 实例static Headers从名称和值数组创建 Headers 实例static Headers从映射创建 Headers 实例parseChallenges(Headers responseHeaders, String headerName) 解析 RFC 7235 认证static intparseSeconds(String value, int defaultValue) 解析秒数static voidreceiveHeaders(CookieJar cookieJar, UnoUrl url, Headers headers) 处理接收到的 Cookie 头部intsize()获取头部数量static int跳到指定字符static intskipWhitespace(String input, int pos) 跳过空白字符转换为多值映射toString()返回头部的字符串表示value(int index) 获取指定索引的头部值获取指定名称的头部值列表varyFields(Headers responseHeaders) 获取 Vary 字段集合static HeadersvaryHeaders(Headers requestHeaders, Headers responseHeaders) 获取影响响应体的请求头部static HeadersvaryHeaders(Response response) 获取影响响应体的请求头部static booleanvaryMatches(Response cachedResponse, Headers cachedRequest, Request newRequest) 检查 Vary 头部是否匹配
-
Method Details
-
of
从名称和值数组创建 Headers 实例要求参数数量为偶数,交替为名称和值。
- Parameters:
namesAndValues- 名称和值数组- Returns:
- Headers 实例
- Throws:
NullPointerException- 如果 namesAndValues 为 nullIllegalArgumentException- 如果参数数量奇数或包含 null
-
of
从映射创建 Headers 实例- Parameters:
headers- 头部名称和值映射- Returns:
- Headers 实例
- Throws:
NullPointerException- 如果 headers 为 nullIllegalArgumentException- 如果名称或值包含 null
-
contentLength
获取响应的 Content-Length- Parameters:
response- 响应- Returns:
- Content-Length 值(无效时为 -1)
-
contentLength
获取头部的 Content-Length- Parameters:
headers- 头部- Returns:
- Content-Length 值(无效时为 -1)
-
varyMatches
public static boolean varyMatches(Response cachedResponse, Headers cachedRequest, Request newRequest) 检查 Vary 头部是否匹配- Parameters:
cachedResponse- 缓存响应cachedRequest- 缓存请求newRequest- 新请求- Returns:
- true 如果 Vary 头部匹配
-
hasVaryAll
检查是否存在 Vary: * 头部- Parameters:
response- 响应- Returns:
- true 如果存在 Vary: *
-
hasVaryAll
检查是否存在 Vary: * 头部- Parameters:
responseHeaders- 响应头部- Returns:
- true 如果存在 Vary: *
-
varyFields
获取 Vary 字段集合- Parameters:
responseHeaders- 响应头部- Returns:
- Vary 字段集合
-
varyHeaders
获取影响响应体的请求头部- Parameters:
response- 响应- Returns:
- 影响响应体的头部
-
varyHeaders
获取影响响应体的请求头部- Parameters:
requestHeaders- 请求头部responseHeaders- 响应头部- Returns:
- 影响响应体的头部
-
parseChallenges
解析 RFC 7235 认证- Parameters:
responseHeaders- 响应头部headerName- 头部名称- Returns:
- 认证挑战列表
-
receiveHeaders
处理接收到的 Cookie 头部- Parameters:
cookieJar- Cookie 管理器url- URLheaders- 头部
-
hasBody
检查响应是否包含消息体- Parameters:
response- 响应- Returns:
- true 如果响应包含消息体
-
skipUntil
跳到指定字符- Parameters:
input- 输入字符串pos- 起始位置characters- 目标字符集- Returns:
- 目标字符位置
-
skipWhitespace
跳过空白字符- Parameters:
input- 输入字符串pos- 起始位置- Returns:
- 非空白字符位置
-
parseSeconds
解析秒数- Parameters:
value- 字符串值defaultValue- 默认值- Returns:
- 秒数
-
newBuilder
创建新的 Builder 实例- Returns:
- Builder 实例
-
hashCode
public int hashCode()计算哈希码 -
get
获取指定名称的最后一个头部值- Parameters:
name- 头部名称- Returns:
- 头部值(不存在时为 null)
-
getDate
获取指定名称的日期头部值- Parameters:
name- 头部名称- Returns:
- 日期值(无效时为 null)
-
getInstant
获取指定名称的 Instant 头部值- Parameters:
name- 头部名称- Returns:
- Instant 值(无效时为 null)
-
size
public int size()获取头部数量- Returns:
- 头部数量
-
name
获取指定索引的头部名称- Parameters:
index- 索引- Returns:
- 头部名称
-
value
获取指定索引的头部值- Parameters:
index- 索引- Returns:
- 头部值
-
names
获取头部名称集合- Returns:
- 不可修改的头部名称集合
-
values
获取指定名称的头部值列表- Parameters:
name- 头部名称- Returns:
- 不可修改的头部值列表
-
byteCount
public long byteCount()获取头部编码字节数- Returns:
- 编码字节数
-
equals
比较两个 Headers 对象是否相等 -
toString
返回头部的字符串表示 -
toMultimap
转换为多值映射- Returns:
- 头部名称到值列表的映射
-