OkHttp封装
来源:互联网 发布:忻州广电网络电视台 编辑:程序博客网 时间:2024/06/05 22:55
这几天一直在学习OkHttp然后写了一个封装代码分享给大家。直接调用很简单,想用什么方法调动直接类名点上方法名然后把参数传进去就可以了,
public class OkHttp {
private static OkHttpClient okHttpClient = null;
public OkHttp() {
}
private static OkHttpClient getOkHttpClient() {
synchronized (OkHttp.class) {
if (okHttpClient == null) {
okHttpClient = new OkHttpClient();
}
}
return okHttpClient;
}
//上传文件
public static void loadFile(String url, File file,String fileName){
OkHttpClient okHttpClient = getOkHttpClient();
//设置文件类型
RequestBody requestBody = RequestBody.create(MediaType.parse("application/octet-stream"),file);
//设置请求体
RequestBody body = new MultipartBody.Builder()
.setType(MultipartBody.FORM)
.addFormDataPart("image",fileName,requestBody)
.build();
//请求方式
Request request = new Request.Builder().url(url).post(body).build();
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
Log.i("成功","成功");
}
});
}
/**
* 1.接口地址
* 2.接口回调
*/
public static void doGet(String url,Callback callback){
OkHttpClient okHttpClient = getOkHttpClient();
Request request = new Request.Builder().url(url).build();
okHttpClient.newCall(request).enqueue(callback);
}
/**
* 1.地址
* 2.接口回调
* 3.请求体
*/
public static void doPost(String url, Map<String,String> map,Callback callback){
OkHttpClient okHttpClient = getOkHttpClient();
FormBody.Builder builder = new FormBody.Builder();
//遍历map集合 设置请求体
for (String mapKey : map.keySet()){
builder.add(mapKey,map.get(mapKey));
}
//设置请求方式
Request request = new Request.Builder().url(url).post(builder.build()).build();
//执行请求方式 接口回调
okHttpClient.newCall(request).enqueue(callback);
}
/**
*1.下载地址
*/
public static void doDown(String url,Callback callback){
OkHttpClient okHttpClient = getOkHttpClient();
Request build = new Request.Builder().url(url).build();
okHttpClient.newCall(build).enqueue(callback);
}
}
- okhttp封装okhttp-utils
- 封装OKHttp
- 封装OkHttp
- okhttp封装
- 封装OKHttp
- 封装OKHttp
- Okhttp封装
- OkHttp 封装
- OkHttp封装
- OKHttp封装
- Okhttp封装
- okHttp封装
- OkHttp封装
- Okhttp封装
- 封装okhttp
- okhttp封装
- 封装okhttp
- Okhttp封装
- servelet监听分类
- 【新API】Aspose.Words for Mac 全新上线 | 支持下载试用
- Linux操作系统下的多线程编程详细解析----条件变量
- ie9下,console.log不执行后续代码
- 基于Python OpenCV加载视频文件,显示,并绘制自定义文字
- OkHttp封装
- Use reflector to access and modify private parameter
- 【1.0版本】CApi帮助类,快速生成WebApi接口说明文档,请求模拟,文档搜索,重新生成说明文档等.自定义配置,使用更方便
- 数据存储设计
- MySQL-5.7.19-Windows64安装详细教程
- spring注解的理解
- java-并发-线程安全
- tinker搭建环境
- Python字典