程序员Android技术知识首页投稿(暂停使用,暂停投稿)

OkHttp之简介

2016-08-06  本文已影响951人  DoAndKeep

一个Android和Java上的HTTP和HTTP/2客户端。

简介

HTTP是应用程序访问网络的方式,就是如何交换数据和媒体。高效使用HTTP可以使得事务加载更快并节省带宽。

OkHttp是一个高效HTTP客户端,原因如下:

OkHttp在网络故障时坚守:它会静默地从普遍连接问题中恢复。如果你的服务有多个IP地址,OkHttp会在第一次连接失败时尝试另外一个地址。对于IPv4+IPv6以及服务放在多个数据中心的情况,这是很重要的。OkHttp会使用先进的TLS特性(SNI,ALPN)来初始化新连接,如果握手失败会回退到TLS 1.0。

使用OkHttp很简单。它的请求/响应API设计为流的构建方式并且不会改变。它支持同步阻塞调用和异步回调调用。

OkHttp支持Android2.3及更高,Java1.7及以上。

示例

使用Get获取内容

下面的代码下载一个URL并使用String打印它的内容。

OkHttpClient client = new OkHttpClient();

String run(String url) throws IOException {
  Request request = new Request.Builder()
      .url(url)
      .build();

  Response response = client.newCall(request).execute();
  return response.body().string();
}

使用Post上传数据

下面的代码上传数据到服务器。

public static final MediaType JSON
    = MediaType.parse("application/json; charset=utf-8");

OkHttpClient client = new OkHttpClient();

String post(String url, String json) throws IOException {
  RequestBody body = RequestBody.create(JSON, json);
  Request request = new Request.Builder()
      .url(url)
      .post(body)
      .build();
  Response response = client.newCall(request).execute();
  return response.body().string();
}

原文链接:
http://square.github.io/okhttp/

OkHttp官方文档系列文章:

上一篇 下一篇

猜你喜欢

热点阅读