public interface Response extends Closeable
Modifier and Type | Method and Description |
---|---|
ResponseBody |
body()
获取响应体,包含服务端返回的内容和Content-Type信息
如果为HEAD、CONNECT、TRACE等方法无响应体,则返回 null |
default byte[] |
bodyBytes()
获取响应流字节码
此方法会转为同步模式,读取响应流并关闭之 |
default String |
bodyStr()
获取响应主体
|
InputStream |
bodyStream()
获得服务区响应流
流获取后处理完毕需关闭此类 |
default Charset |
charset()
获取字符集编码,默认为响应头中的编码
|
default String |
contentEncoding()
获取内容编码
|
default long |
contentLength()
获取内容长度,以下情况长度无效:
Transfer-Encoding: Chunked
Content-Encoding: XXX
参考:https://blog.csdn.net/jiang7701037/article/details/86304302
|
default String |
getCookieStr()
获取本次请求服务器返回的Cookie信息
|
default String |
getFileNameFromDisposition(String paramName)
从Content-Disposition头中获取文件名,以参数名为`filename`为例,规则为:
首先按照RFC5987规范检查`filename*`参数对应的值,即:`filename*="example.txt"`,则获取`example.txt`
如果找不到`filename*`参数,则检查`filename`参数对应的值,即:`filename="example.txt"`,则获取`example.txt`
按照规范,`Content-Disposition`可能返回多个,此处遍历所有返回头,并且`filename*`始终优先获取,即使`filename`存在并更靠前。
|
int |
getStatus()
获取状态码
|
default String |
header(HeaderName name)
根据name获取头信息
|
String |
header(String name)
根据name获取头信息
根据RFC2616规范,header的name不区分大小写 |
default List<String> |
headerList(String name)
根据name获取对应的头信息列表
|
Map<String,List<String>> |
headers()
获取headers
|
default boolean |
isChunked()
是否为Transfer-Encoding:Chunked的内容
|
default boolean |
isOk()
请求是否成功,判断依据为:状态码范围在200~299内。
|
Response |
sync()
同步
如果为异步状态,则暂时不读取服务器中响应的内容,而是持有Http链接的 InputStream 。 |
default void |
then(Consumer<Response> consumer)
链式处理结果
|
int getStatus()
String header(String name)
name
- Header名default Charset charset()
InputStream bodyStream()
Response sync()
InputStream
。ResponseBody body()
null
ResponseBody
default String bodyStr() throws HttpException
HttpException
- 包装IO异常default byte[] bodyBytes()
default boolean isOk()
default String header(HeaderName name)
name
- Header名default List<String> headerList(String name)
name
- Header名default String contentEncoding()
default long contentLength()
default boolean isChunked()
default String getCookieStr()
default String getFileNameFromDisposition(String paramName)
paramName
- 文件参数名,如果为null
则使用默认的`filename`Copyright © 2025. All rights reserved.