广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州OkHttps如何取消请求?_北大青鸟IT学校

作者:邓华发布时间:2021-06-14分类:Java技术浏览:818


导读:OkHttps如何取消请求?相信这是每个学习Java的同学都会遇到的问题,下面我们一起来看看惠州北大青鸟老师是怎么回答的。

OkHttps如何取消请求?相信这是每个学习Java的同学都会遇到的问题,下面我们一起来看看惠州北大青鸟老师是怎么回答的。

OkHttps如何取消请求?有4种方式可选:

一、使用HttpCall#cancel()取消单个请求(适用于异步请求)

  1. HttpCall call = http.async("/users/1").get();



  2. System.out.println(call.isCanceled());     // false



  3. boolean success = call.cancel();           // 取消请求



  4. System.out.println(success);               // true

  5. System.out.println(call.isCanceled());     // true

二、使用HttpTask#cancel()取消单个请求(适用于所有请求,since v1.0.4)

  1. HttpTask<?> task = http.async("/users")

  2.         .setOnResponse((HttpResult result) -> {

  3.             // 响应回调

  4.         });



  5. task.get(); // 发起 GET 请求



  6. // 取消请求,并返回是否取消成功

  7. boolean canceled = task.cancel();   

三、使用HTTP#cancel(String tag)按标签批量取消请求(适用于所有请求)

  1. http.async("/users")    //(1)

  2.         .setTag("A")

  3.         .get();

  4.         


  5. http.async("/users")    //(2)

  6.         .setTag("A.B")

  7.         .get();

  8.         


  9. http.async("/users")    //(3)

  10.         .setTag("B")

  11.         .get();

  12.         


  13. http.async("/users")    //(4)

  14.         .setTag("B")

  15.         .setTag("C")    // 从 v1.0.4 标签将以追加模式添加,等效于 setTag("B.C")

  16.         .get();

  17.         


  18. http.async("/users")    //(5)

  19.         .setTag("C")

  20.         .get();



  21. int count = http.cancel("B");     //(2)(3)(4)被取消(取消标签包含"B"的任务)


  22. System.out.println(count);        // 输出 3

四、 使用HTTP#cancelAll()取消所有请求(适用于所有请求)(since v1.0.2)

  1. http.cancelAll();   // 取消所有请求

想了解更多关于Java的知识,联系在线客服,或者来惠州北大青鸟新方舟校区了解一下。

Java14.png

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表