public abstract class HttpBuilder extends Object
注意:发送完请求后如果不需要对响应结果进行处理需要调用 close()方法来关闭响应链接
| 限定符和类型 | 字段和说明 |
|---|---|
protected okhttp3.Headers.Builder |
headerBuilder
请求头构建
|
protected okhttp3.OkHttpClient.Builder |
httpClientBuilder
http 请求客户端构建
|
protected okhttp3.Request.Builder |
requestBuilder
请求对象构建
|
protected okhttp3.ResponseBody |
responseBody
请求结果
|
protected String |
url
请求路径
|
| 构造器和说明 |
|---|
HttpBuilder(String url) |
| 限定符和类型 | 方法和说明 |
|---|---|
HttpBuilder |
addHeader(String key,
String value)
添加请求头信息
|
HttpBuilder |
addNetInterceptor(okhttp3.Interceptor interceptor)
添加网络层拦截器
|
HttpBuilder |
addRequestInterceptor(RequestInterceptor requestInterceptor)
添加请求拦截器
|
HttpBuilder |
addResponseInterceptor(ResponseInterceptor responseInterceptor)
添加响应拦截器
|
InputStream |
byteStream()
获取字节流
|
void |
close()
关闭响应体
如果只发送请求,不对请求结果进行处理 记得只send方法后执行该方法
|
static HttpGetBuilder |
get(String url)
准备发送get请求
|
<T> List<T> |
getJsonArrayResult(Class<T> resultClass)
获取json array 结果
|
<T> T |
getJsonObjResult(Class<T> resultClass)
获取json obj 结果
|
String |
getResult()
获取请求结果
|
static HttpPostBuilder |
post(String url)
准备发送Post请求
|
static HttpPostMultipartBuilder |
postMultipart(String url)
准备发送 post 多部分分片请求
|
static HttpPostPayloadBuilder |
postPayload(String url)
准备发送Post Payload 有效载荷请求
|
protected void |
sendRequest()
发送请求
|
HttpBuilder |
setConnectTimeout(long timeout,
TimeUnit unit)
设置连接超时时间
|
HttpBuilder |
setHeader(Map<String,String> header)
设置请求头信息
|
HttpBuilder |
setReadTimeout(long timeout,
TimeUnit unit)
设置读取超时时间
|
void |
writeFile(File file)
数据写入文件
|
protected final String url
protected okhttp3.Headers.Builder headerBuilder
protected okhttp3.OkHttpClient.Builder httpClientBuilder
protected okhttp3.Request.Builder requestBuilder
protected okhttp3.ResponseBody responseBody
public HttpBuilder(String url)
public static HttpGetBuilder get(String url)
url - 请求地址public static HttpPostBuilder post(String url)
url - 请求地址public static HttpPostPayloadBuilder postPayload(String url)
url - 请求地址public static HttpPostMultipartBuilder postMultipart(String url)
url - 请求地址public HttpBuilder addNetInterceptor(okhttp3.Interceptor interceptor)
interceptor - 网络层拦截器public HttpBuilder addRequestInterceptor(RequestInterceptor requestInterceptor)
requestInterceptor - 请求拦截器public HttpBuilder addResponseInterceptor(ResponseInterceptor responseInterceptor)
responseInterceptor - 响应拦截器public HttpBuilder setHeader(Map<String,String> header)
header - 头部信息public HttpBuilder addHeader(String key, String value)
key - 键value - 值public HttpBuilder setConnectTimeout(long timeout, TimeUnit unit)
timeout - 超时时间unit - 时间单位public HttpBuilder setReadTimeout(long timeout, TimeUnit unit)
timeout - 超时时间unit - 时间单位protected final void sendRequest()
throws HttpRequestException
HttpRequestException - 请求出现例外public void close()
如果只发送请求,不对请求结果进行处理 记得只send方法后执行该方法
public InputStream byteStream()
public void writeFile(File file) throws IOException
file - 文件 不存在则创建IOException - 操作过程发生例外public String getResult() throws IOException
IOException - 响应主体转换为字符串发生例外public <T> T getJsonObjResult(Class<T> resultClass) throws IOException
T - 泛型resultClass - 返回值封装对象IOException - 响应主体转换为字符串发生例外public <T> List<T> getJsonArrayResult(Class<T> resultClass) throws IOException
T - 泛型resultClass - 返回值封装对象IOException - 响应主体转换为字符串发生例外Copyright © 2019. All rights reserved.