OkHttp框架读书总结笔记
来源:互联网 发布:鹰潭三缺一麻将软件 编辑:程序博客网 时间:2024/06/09 16:45
一、添加依赖
build.gradle
dependencies {
compile 'com.squareup.okhttp3:okhttp:3.2.0'compile 'com.squareup.okio:okio:1.7.0'
}
权限:<uses-permission android:name="android.permission.INTERNET" />
HelloOkhttp
import java.io.IOException;import okhttp3.OkHttpClient;import okhttp3.Request;import okhttp3.Response;/** * Created by Administrator on 2017/11/27. */public class HelloOkhttp { public static void main(String [] args) throws IOException { OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder(). url("http://www.baidu.com").build(); try { Response response = client.newCall(request).execute(); if (response.isSuccessful()) { System.out.println(response.body().string()); } } catch (IOException e) { e.printStackTrace(); } }}
QueryHttp
import java.io.IOException;import okhttp3.HttpUrl;import okhttp3.OkHttpClient;import okhttp3.Request;import okhttp3.Response;/** * Created by Administrator on 2017/11/27. */public class QueryHttp { public static void main(String args[]) { OkHttpClient client = new OkHttpClient(); HttpUrl httpUrl = HttpUrl.parse("https://api.heweather.com/x3/weather"). newBuilder(). addQueryParameter("city", "beijing"). addQueryParameter("key", "d17ce22ec5404ed883e1cfcaca0ecaa7"). build(); String url = httpUrl.toString(); System.out.println(httpUrl.toString()); Request request = new Request.Builder().url(url).build(); try { Response response = client.newCall(request).execute(); if (response.isSuccessful()) { System.out.println(response.body().string()); } } catch (IOException e) { e.printStackTrace(); } }}
HeadHttp
import java.io.IOException;import okhttp3.Headers;import okhttp3.OkHttpClient;import okhttp3.Request;import okhttp3.Response;/** * Created by Administrator on 2017/11/27. *//** * 请求头 */public class HeadHttp { public static void HadeHttp(String url){ OkHttpClient client =new OkHttpClient(); Request request = new Request.Builder().url(url). addHeader("User-Agent","from nate http").build(); try { Response response = client.newCall(request).execute(); if(response.isSuccessful()){ Headers headers = response.headers(); for(int i=0;i<headers.size();i++){ System.out.println(headers.name(i)+":"+headers.value(i)); } } } catch (IOException e) { e.printStackTrace(); } } public static void main(String []args){ HadeHttp("http://www.baidu.com"); }}
同步和异步请求比较
import java.io.IOException;import okhttp3.Call;import okhttp3.Callback;import okhttp3.OkHttpClient;import okhttp3.Request;import okhttp3.Response;/** * Created by Administrator on 2017/11/27. *//**同步 * */public class AsyncHttp { public static void SendHttp(String url){ OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder().url(url).build(); try { Response response = client.newCall(request).execute(); if (response.isSuccessful()){ System.out.println(response.body().string()); } } catch (IOException e) { e.printStackTrace(); } } /** *异步 * */ public static void SendAsyncHttp(String url){ System.out.println(Thread.currentThread().getId()); OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder().url(url).build(); client.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()){ System.out.println(Thread.currentThread().getId()); } } }); } public static void main(String [] args){ SendAsyncHttp("http://www.baidu.com");// SendHttp("http://www.baidu.com"); }}
阅读全文
0 0
- OkHttp框架读书总结笔记
- Retrofit框架读书总结笔记(一)
- Android框架学习笔记01Okhttp框架
- 网络框架Volley和OkHttp总结
- [读书总结]Hibernate的事件框架
- 【安卓】Okhttp网络框架笔记
- okhttp学习笔记--网络框架封装
- 第二行代码读书总结加笔记
- oKhttp框架
- OkHTTP框架
- OKHttp框架
- OkHttp框架
- OkHttp框架
- OKHttp框架
- okhttp总结
- OKHttp总结
- 读书总结
- 网络请求框架 okhttp 简单的使用总结(一)
- 结构化机器学习项目Quiz1
- Python爬虫实战:抓取淘宝MM照片
- LCD字体
- 操作系统引论
- HbaseSchool 一套包含了HbaseGo和HbaseTo的Java Hbase数据操作快速开发框架
- OkHttp框架读书总结笔记
- windows下MongoDB的安装及配置
- Android播放聊天语音消息帧动画问题
- 对jsonarray中某个对象的某一个字段进行排序
- FBL3N增加表字段
- 1008. 数组元素循环右移问题 (20) PAT乙级真题
- Django CSRF处理
- GP TEE中的存储
- Bandicam(高清视频录制工具)官方破解版V4.0.2.1352下载 | 含bandicam注册机