HttpResponse
HttpResponse 类扩展自 HttpPacket,用于表示 HTTP 响应。它包含了与 HTTP 响应相关的状态码、头部信息、Cookie 和主体内容。
构造方法
HttpResponse()- 说明:默认构造函数,初始化一个空的 HTTP 响应对象。
HttpResponse(HttpRequest request)- 参数:
HttpRequest request- 对应的 HTTP 请求。 - 说明:根据提供的 HTTP 请求创建响应。这种方式允许响应与请求相关联,从而可以更好地处理连接和版本兼容性。
- 参数:
HttpResponse(Map<HeaderName, HeaderValue> responseHeaders, byte[] body)- 参数:
Map<HeaderName, HeaderValue> responseHeaders- 响应头部。 - 参数:
byte[] body- 响应主体。 - 说明:通过指定的头部信息和主体内容创建一个 HTTP 响应。
- 参数:
公开方法
crossDomain()- 说明:设置响应头以支持跨域请求。
cloneResponse(HttpRequest request, HttpResponse response)- 参数:
HttpRequest request- HTTP 请求。 - 参数:
HttpResponse response- 要克隆的响应。 - 返回:
HttpResponse- 响应对象
- 参数:
getHeaders()- 返回:
Map<HeaderName, HeaderValue>- 响应头部。 - 说明:返回 HTTP 响应的头部信息。注意,不应直接修改返回的 Map 对象,而应使用提供的方法来添加或修改头部。
- 返回:
addHeader(HeaderName key, HeaderValue value)- 参数:
HeaderName key- 头部名称。 - 参数:
HeaderValue value- 头部值。 - 说明:向响应中添加一个头部。
- 参数:
addHeaders(Map<HeaderName, HeaderValue> headers)- 参数:
Map<HeaderName, HeaderValue> headers- 要添加的头部集合。 - 说明:添加一组头部到响应中。
- 参数:
getContentType()- 返回:
HeaderValue- "Content-Type"头部的值。 - 说明:获取响应的"Content-Type"头部内容。
- 返回:
addCookie(Cookie cookie)- 参数:
Cookie cookie- 要添加的 Cookie。 - 返回:
boolean- 添加是否成功。 - 说明:向响应中添加一个 Cookie。
- 参数:
getCharset()- 返回:
String- 字符集。 - 说明:获取响应使用的字符集。
- 返回:
getCookies()- 返回:
List<Cookie>- Cookie 列表。 - 说明:返回响应中包含的所有 Cookie。
- 返回:
getHttpRequest()- 返回:
HttpRequest- 对应的 HTTP 请求。 - 说明:获取与此响应相关联的 HTTP 请求。
- 返回:
getStatus()- 返回:
HttpResponseStatus- 响应状态。 - 说明:获取响应的状态码。
- 返回:
isStaticRes()- 返回:
boolean- 是否是静态资源。 - 说明:检查此响应是否表示静态资源。
- 返回:
logstr()- 返回:
String- 日志字符串。 - 说明:生成响应的日志表示,通常用于调试和日志记录。
- 返回:
setCharset(String charset)- 参数:
String charset- 字符集。 - 说明:设置响应使用的字符集。
- 参数:
setCookies(List<Cookie> cookies)- 参数:
List<Cookie> cookies- Cookie 列表。 - 说明:设置响应中包含的 Cookie。
- 参数:
setHttpRequestPacket(HttpRequest request)- 参数:
HttpRequest request- HTTP 请求。 - 说明:设置与此响应相关联的 HTTP 请求。
- 参数:
setStaticRes(boolean isStaticRes)- 参数:
boolean isStaticRes- 是否是静态资源。 - 说明:设置此响应是否表示静态资源。
- 参数:
setStatus(HttpResponseStatus status)- 参数:
HttpResponseStatus status- 响应状态。 - 说明:设置响应的状态码。
- 参数:
isHasGzipped()- 返回:
boolean- 是否已经被 GZIP 压缩。 - 说明:检查响应的内容是否已经被 GZIP 压缩。
- 返回:
setSkipGzipped(boolean hasGzipped)- 参数:
boolean hasGzipped- 是否已经被 GZIP 压缩。 - 说明:设置响应的内容是否已经被 GZIP 压缩。
- 参数:
isSkipIpStat()- 返回:
boolean- 是否忽略 IP 访问统计。 - 说明:检查是否忽略对此响应的 IP 访问统计。
- 返回:
setSkipIpStat(boolean skipIpStat)- 参数:
boolean skipIpStat- 是否忽略 IP 访问统计。 - 说明:设置是否忽略对此响应的 IP 访问统计。
- 参数:
isSkipTokenStat()- 返回:
boolean- 是否忽略 token 访问统计。 - 说明:检查是否忽略对此响应的 token 访问统计。
- 返回:
setSkipTokenStat(boolean skipTokenStat)- 参数:
boolean skipTokenStat- 是否忽略 token 访问统计。 - 说明:设置是否忽略对此响应的 token 访问统计。
- 参数:
getLastModified()- 返回:
HeaderValue- 最后修改时间。 - 说明:获取响应的最后修改时间头部。
- 返回:
getHeader(HeaderName name)- 参数:
HeaderName name- 头部名称。 - 返回:
HeaderValue- 头部值。 - 说明:根据头部名称获取相应的头部值。
- 参数:
setLastModified(HeaderValue lastModified)- 参数:
HeaderValue lastModified- 最后修改时间。 - 说明:设置响应的最后修改时间头部。
- 参数:
toString()- 返回:
String- 响应的字符串表示。 - 说明:返回响应的字符串表示,通常用于调试和日志记录。
- 返回:
getHeaderByteCount()- 返回:int- 头部字节计数。 - 说明:获取响应头部的字节大小。
