Java 类com.squareup.okhttp.apache.OkApacheClient 实例源码

项目:jump.android    文件:AsyncHttpClient.java   
static private HttpClient setupHttpClient() {
    OkHttpClient client = new OkHttpClient();
    client.setConnectTimeout(30, TimeUnit.SECONDS);
    client.setFollowRedirects(false);
    OkApacheClient apacheClient = new OkApacheClient(client);

    return apacheClient;
}
项目:spdymcsclient    文件:App.java   
private static void apacheAlikeApiSample() throws Exception {
        System.out.println("::: It's a apache client alike api usage.");
        // ::: It's a apache client alike api usage.
        // Create a apache kind of http client which you can share in whole application
        OkApacheClient client = new OkApacheClient();
        client.impl().setHostnameVerifier(UTILS.createInsecureHostnameVerifier());
        client.impl().setSslSocketFactory(UTILS.createInsecureSslSocketFactory());
        // Config the preferred protocol for special host you prefer to invoke with special protocol. 
        client.configPreferredHostProtocol("118.186.217.31", Protocol.SPDY_3);
        // http://118.186.217.31 hosts with a spdy style http service, we create a get request for it
        HttpGet request = new HttpGet(new URL("http://118.186.217.31/").toURI());
//        HttpGet request = new HttpGet(new URL("https://www.cloudflare.com/").toURI());
        // then run it.
        HttpResponse response = client.execute(request);
        // should OUTPUT:
        // HTTP/1.1 200 OK [OkHttp-Selected-Protocol: spdy/3.1, server: nginx/1.5.11, date: \
        // Thu, 12 Jun 2014 09:09:34 GMT, content-type: text/html; charset=UTF-8, alternate-protocol:\
        // 443:npn-spdy/3, OkHttp-Sent-Millis: 1402564173672, OkHttp-Received-Millis: 1402564173708]\
        // HTTP/1.1 200 OK [OkHttp-Selected-Protocol: spdy/3.1, server: cloudflare-nginx, date: \
        // Wed, 18 Jun 2014 10:35:44 GMT, content-type: text/html; charset=UTF-8, set-cookie: \
        // __cfduid=dec44ce8ac515d613f7490568f39612f21403087744468; expires=Mon, 23-Dec-2019 23:50:00 GMT; \
        // path=/; domain=.cloudflare.com; HttpOnly, expires: Wed, 18 Jun 2014 14:35:44 GMT, cache-control: \
        // public, max-age=14400, pragma: no-cache, x-frame-options: DENY, vary: Accept-Encoding, \
        // strict-transport-security: max-age=31536000, cf-cache-status: HIT, cf-ray: 13c6d782e0ac0d31-LAX, \
        // OkHttp-Sent-Millis: 1403087740701, OkHttp-Received-Millis: 1403087741183]

        System.out.println(response);
        String actual = EntityUtils.toString(response.getEntity(), UTF_8);
        System.out.println(actual);
        System.out.println(":::\n");

        System.out.println("::: It's a Url connection alike api usage.");
        // ::: It's a Url connection alike api usage
        // firstly, we create a okhttp lib client for further using
        OkHttpClient ok = new OkHttpClient();
        ok.setHostnameVerifier(UTILS.createInsecureHostnameVerifier());
        ok.setSslSocketFactory(UTILS.createInsecureSslSocketFactory());
        // we config a host with a prefered portocol kind
        // actally http://118.186.217.31 hosts with a spdy style http service
//        ok.configPreferredHostProtocol("118.186.217.31", Protocol.SPDY_3);
        // with the customized client, create a url factory
        OkUrlFactory factory = new OkUrlFactory(ok);
        // open an connection from a URL
        HttpURLConnection connection = factory.open(new URL("https://118.186.217.31"));
        connection.connect();
        BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream(), UTF_8));
        for (String line = null; (line = reader.readLine()) != null;) System.out.println(line);
        reader.close();
        connection.disconnect();
        System.out.println(":::\n");
    }