OkHttp 简易封装工具 FastHttpClient

码农软件 · 软件分类 · 网络工具包 · 2019-02-25 07:13:19

软件介绍

FastHttpClient 是简易封装 OkHttp 的工具(需要jdk8以上),高效使用http(s) post get 。

用法

1.同步的get

FastHttpClient.get().
        url(url).
        addParams("userName", "icecool").
        addParams("password", "111111").
        build().
        execute();

2.同步的post

FastHttpClient.post().
        url(url).
        addParams("userName", "icecool").
        addParams("password", "111111").
        build().
        execute();

3.异步的get

FastHttpClient.get().
            url(url).
            addParams("userName","icecool").
            addParams("password", "111111").
            build().
            executeAsync(new Callback() {
            @Override
            public void onFailure(Call call, Exception e, int id) {
                //TODO
            }

            @Override
            public void onResponse(Call call,Response response, int id) {
                try {
                    System.out.println(response.body().string());
                } catch (IOException e) {
                }
            }
        });

4.异步的post

FastHttpClient.post().
            url(url).
            addParams("userName","icecool").
            addParams("password", "111111").
            build().
            executeAsync(new Callback() {
            @Override
            public void onFailure(Call call, Exception e, int id) {
                //TODO
            }

            @Override
            public void onResponse(Call call,Response response, int id) {
                try {
                    System.out.println(response.body().string());
                } catch (IOException e) {
                }
            }
        });

5.异步下载文件

FastHttpClient.get().
        url("http://e.hiphotos.baidu.com/image/pic/item/faedab64034f78f0b31a05a671310a55b3191c55.jpg").
        build().addNetworkInterceptor(new DownloadFileInterceptor(){
            @Override
            public void updateProgress(long downloadLenth, long totalLength, boolean isFinish) {
                System.out.println("updateProgress downloadLenth:"+downloadLenth+
                        ",totalLength:"+totalLength+",isFinish:"+isFinish);
            }
        }).
        executeAsync(new DownloadFileCallback("/tmp/tmp.jpg") {//save file to /tmp/tmp.jpg
                @Override
                public void onFailure(Call call, Exception e, int id) {
                    e.printStackTrace();
                }
                @Override
                public void onSuccess(Call call, File file, int id) {
                    super.onSuccess(call, file, id);
                    System.out.println("filePath:"+file.getAbsolutePath());
                }
                @Override
                public void onSuccess(Call call, InputStream fileStream, int id) {
                    System.out.println("onSuccessWithInputStream");
                }
        });
Thread.sleep(50000);

6.上传文件

byte[] imageContent=FileUtil.getBytes("/tmp/test.png");
        response = FastHttpClient.post().
                url(url).
                addFile("file1", "a.txt", "123").
                addFile("file2", "b.jpg", imageContent).
                build().
                connTimeOut(10000).
                execute();
System.out.println(response.body().string());

7.https get

Response response = FastHttpClient.get().url("https://kyfw.12306.cn/otn/").
                build()
                .execute();
System.out.println(response.body().string());

8.https post

Response response = FastHttpClient.post().url("https://kyfw.12306.cn/otn/").
                build()
                .execute();
System.out.println(response.body().string());

本文地址:https://codercto.com/soft/d/77.html

面向对象技术UML教程

面向对象技术UML教程

王少峰 / 清华大学出版社 / 2004-2 / 24.00元

《面向对象技术UML教程》主要介绍统一建模语言UML及其应用。全书内容丰富,包括UML的用例图、顺序图、协作图、类图、对象图、状态图、活动图、构件图和部署图等9个图中所涉及的术语、规则和应用,以及数据建模、OCL、业务建模、Web建模、设计模式、OO实现语言、RUP等方面的内容,同时介绍了Rose开发工具中的一些用法。《面向对象技术UML教程》最后是一个课程注册系统的实例研究,以及一些思考题和设计......一起来看看 《面向对象技术UML教程》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

html转js在线工具
html转js在线工具

html转js在线工具