| Interface | Description |
|---|---|
| UnrepeatableBody |
不可重复的请求体
|
| Class | Description |
|---|---|
| BufferedBody |
此请求主体仅涉及应用程序线程。首先将所有字节写入缓冲区。
只有完成之后,字节才会被复制到网络中
|
| FormBody |
Form请求体内容
|
| FormBody.Builder | |
| MultipartBody |
The MIME Multipart/Related Content-type
用于复合对象
|
| MultipartBody.Builder | |
| MultipartBody.Part | |
| OutputStreamBody |
通过阻塞写入输出流来填充的请求主体。输出数据要么是完全缓冲的(使用
BufferedBody),
要么是流的(使用StreamedBody)。在这两种情况下,直到调用者将正文的字节写入输出流时,
正文的字节才会被知道 |
| RealResponseBody |
响应体只能使用一次
|
| RequestBody |
内容对象
|
| ResponseBody |
从源服务器到客户机应用程序的一次性流,包含响应主体的原始字节。 到web服务器的活动连接支持每个响应主体。
这对客户机应用程序施加了义务和限制,每个响应主体由一个有限的资源(如socket(实时网络响应)或一个打开的
文件(用于缓存的响应)来支持。如果不关闭响应体,将会泄漏资源并减慢或崩溃
这个类和
Response都实现了Closeable。关闭一个响应就是关闭它的响应体。如果您
调用NewCall.execute()或实现Callback.onResponse(org.aoju.bus.http.NewCall, org.aoju.bus.http.Response),则必须通过
调用以下任何方法来关闭此主体:
Response.close()
Response.body().close()
Response.body().source().close()
Response.body().charStream().close()
Response.body().byteStream().close()
Response.body().bytes()
Response.body().string()
这个类可以用来传输非常大的响应。例如,可以使用这个类来读取大于分配给当前进程的整个内存的响应。
它甚至可以传输大于当前设备总存储的响应,这是视频流应用程序的一个常见需求
因为这个类不会在内存中缓冲完整的响应,所以应用程序可能不会重新读取响应的字节。使用ResponseBody.bytes()
或ResponseBody.string()将整个响应读入内存。或者使用ResponseBody.source()、ResponseBody.byteStream()
或ResponseBody.charStream()来处理响应 |
| StreamedBody |
这个请求体通过管道将字节从应用程序线程流到Httpd调度程序线程。
因为数据不是缓冲的,所以只能传输一次
|
Copyright © 2020. All rights reserved.