开发工具与关键技术:Android Studio
作者:邹铭霞
撰写时间:2020年05月05日
OKHttp是Square公司辨析的一个网络请求框架,也是目前使用最多的网络框架之一。OKHttp是基于HTTP协议封装的一套请求客户端,在请求底层支持连接同一个地址的链接共享同一个Socket。
OkHttp的优点
支持HTTP/2 协议,允许连接到同一个主机地址的所有请求共享Socket。可以有效管理网络连接以及提高连接复用率。
在HTTP/2协议不可用的情况下,通过连接池减少请求的延迟。
GZip透明压缩减少传输的数据包大小。
缓存请求,避免同一个重复的网络请求。
会从很多常用的连接问题中自动恢复。如果您的服务器配置了多个IP地址,当第一个IP连接失败的时候,OkHttp会自动尝试下一个IP。OkHttp还处理了代理服务器问题和SSL握手失败问题。
在build.gradle中添加网络请求
//网络请求
implementation 'com.squareup.okhttp3:okhttp:4.4.0'
implementation 'com.squareup.okhttp3:logging-interceptor:4.4.0'
OkHttp的使用
OkHttpClient client = new OkHttpClient();//创建OkHttpClient对象
Request request = new Request.Builder()
.url(url)//请求链接
.build();//创建Request对象
Response response = client.newCall(request).execute();//获取Response对象
OKHttp的GET请求的同步请求用法
在使用OkHttp时需要先创建OkHttpClient对象。
OkHttpClient client = new OkHttpClient();
String run(String url) throws IOException {
Request request = new