JAVA学习笔记 (okHttp3的用法)

好久不见. 提交于 2020-05-05 15:55:49

最近的项目中有个接口是返回文件流数据,根据我们这边一个验签的插件,我发现里面有okHttpClient提供了Call.Factory,所以就学习了下okHttp3的用法。

 

1、概述

okhttp是一个处理网络请求的开源项目,是安卓端最火热的轻量级框架,由移动支付Square公司开发。

okttp3的github官方地址是:https://square.github.io/okhttp/

 

2、get方式请求

try {
            // 初始化 OkHttpClient
            OkHttpClient client = new OkHttpClient();
            // 初始化请求体
            Request request = new Request.Builder()
                    .get()
                    .url(url)
                    .build();
            // 得到返回Response
            Response response = client.newCall(request).execute();
        } 
catch (IOException e) {
            e.printStackTrace();
        }

 

3、post方式请求

try {
            // 初始化 OkHttpClient
            OkHttpClient client = new OkHttpClient();
            //请求参数体
            RequestBody requestBody = new FormBody.Builder()
                            .add("name","张三")
                            .add("age","20")
                            .build();
            // 初始化请求体
            Request request = new Request.Builder()
                           .post(requestBody)
                           .url(url)
                           .build();
            // 得到返回Response
            Response response = client.newCall(request).execute();
        } 
catch (IOException e) {
            e.printStackTrace();
        }   

 

4、自己的实例

post方式请求,url和RequestBody作为参数

 

调用该方法,并传入url和requestB

单元测试,获取到的文件流输出到文件

 

5、小结

其实以上只是我在使用中很简单的一个运用,okHttp3对于http请求的处理还有很多可以研究的地方,比如上传参数是json怎么处理?上传文件怎么处理?

日后的工作中继续学习。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!