OKhttp框架--01
来源:互联网 发布:pptv聚力网络电视2017 编辑:程序博客网 时间:2024/05/14 07:33
1、简介
1、OKHttp是Square公司推出的一款高效的HTTP客户端,支持同一个地址的连接共享同一个Socket、GZIP压缩、请求缓存等等
2、OkHttp内部依赖Okio,Okio已经被谷歌使用在了android源码上,相当强大
3、android-async-http内部使用HttpClient,但是android6.0版本中已经删除了HttpClient的API,所以android-async-http已经过时。
2、OKHttp主要功能
1、请求文本数据
2、大文件上传
3、大文件下载
4、请求图片
3、使用方法
3.1 导入OkHttp:
compile 'com.squareup.okhttp3:okhttp:3.6.0'
3.2 get请求:
//1、创建OkHttpClient客户端对象 OkHttpClient okHttpClient = new OkHttpClient(); //2、创建Request对象,封装请求参数 Request request = new Request.Builder().url(urlPath).build(); //3、将请求封装成了任务 Call call = okHttpClient.newCall(request); //4、将任务加入调度队列 call.enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { } //onResponse方法不在UI线程,所以需要handler来更新UI @Override public void onResponse(Call call, Response response) throws IOException { if (response.isSuccessful()) { //使用handler发送消息来更新UI String result = response.body().string(); Message msg = handler.obtainMessage(); msg.obj = result; handler.sendMessage(msg); } } }); /* Call(任务)有两个方法: execute(): 立即执行请求,阻塞直到响应可以被处理。 enqueue(): 以异步的方式去执行请求,将call加入调度队列,等待任务执行完成,任务完成后可在 Callbacl中的onResponse方法中得到结果。 */
3.3 post请求:
//1、创建OkHttpClient客户端对象 OkHttpClient okHttpClient = new OkHttpClient(); //2、创建请求体对象,数据类型为json MediaType mediaType = MediaType.parse("application/json; charset=utf-8"); RequestBody requestBody = RequestBody.create(mediaType, ""); //3、创建Request对象,封装请求参数 Request request = new Request.Builder().post(requestBody).url(urlPath).build(); //4、将任务加入调度队列 okHttpClient.newCall(request).enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { } @Override public void onResponse(Call call, Response response) throws IOException { if (response.isSuccessful()) { String result = response.body().string(); Message msg = handler.obtainMessage(); msg.obj = result; handler.sendMessage(msg); } } });
3、OkHttp封装
https://github.com/hongyangAndroid/okhttputils
0 0
- OKhttp框架--01
- Android框架学习笔记01Okhttp框架
- oKhttp框架
- OkHTTP框架
- OKHttp框架
- OkHttp框架
- OkHttp框架
- OKHttp框架
- Android OkHttp封装 框架
- okHttp开发框架使用
- android OkHttp框架解析
- okhttp框架的封装
- okhttp框架的使用
- okhttp网络请求框架
- java-框架-OkHttp
- 网络请求框架OKHttp
- OkHttp网络请求框架
- Android OkHttp框架解析
- JavaScript之严格模式
- [故障公告]博客站点遭遇超过20G的流量攻击被阿里云屏蔽
- 14.2.1
- iOS 依次执行 异步网络请求的一种实现
- 前端面试题整理
- OKhttp框架--01
- 06_04 使用索引查询学生成绩
- redis-javacode
- VHDL操作符
- ETC-卡结构
- Openwrt-Chaos_Calmer搭建编译环境问题处理
- 优化MySchool 第七章上机
- SQL查看当前数据库的版本信息
- redis-javacode2-pool