• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

两分钟Mock OkHttp网络请求以CSDN官网请求为例

武飞扬头像
张云瀚
帮助1

目录

上下文和工具

步骤

Charles抓包

Postman Mock

 OKHttp发起请求

拓展知识

关于Http状态码

 关于OkHttp

总结


上下文和工具

如何快速Mock该请求呢?共分为三步:Charles抓包、Postman Mock、OKHttp发起。

所需工具如下:

  1.  
    1.Charles:V4.6.1版本;
  2.  
    2.PostMan:9.4.0版本;
  3.  
    3.OKHttp:com.squareup.okhttp3:okhttp:3.10.0.3

步骤

Charles抓包

步骤1:打开Charles;

步骤3:右键该网络请求->点击"Copy cURL Request"

学新通

Postman Mock

步骤1:打开PostMan,点击import;

步骤2:选择Raw Text,粘贴,点击Continue;

学新通

 步骤3:点击Send发送网络请求;将该请求转换为OKHttp代码;复制即可。

学新通

 除了OKHttp请求之外,还支持Swift、C、PHP等。

学新通

 OKHttp发起请求

复制粘贴即可&子线程发起网络请求,Header内容可调整。

  1.  
    OkHttpClient client = new OkHttpClient().newBuilder()
  2.  
    .build();
  3.  
    Request request = new Request.Builder()
  4.  
    .url("https://www.csdn.net/")
  5.  
    .method("GET", null)
  6.  
    .addHeader("Host", "www.csdn.net")
  7.  
    .addHeader("cache-control", "max-age=0")
  8.  
    .addHeader("sec-ch-ua-mobile", "?0")
  9.  
    .addHeader("sec-ch-ua-platform", "\"macOS\"")
  10.  
    .addHeader("upgrade-insecure-requests", "1")
  11.  
    .addHeader("user-agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36")
  12.  
    .addHeader("accept", "text/html,application/xhtml xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9")
  13.  
    .addHeader("sec-fetch-site", "none")
  14.  
    .addHeader("sec-fetch-mode", "navigate")
  15.  
    .addHeader("sec-fetch-user", "?1")
  16.  
    .addHeader("sec-fetch-dest", "document")
  17.  
    .addHeader("accept-language", "zh-CN,zh;q=0.9")
  18.  
    .addHeader("Cookie", "dc_session_id=10_1639217475457.541704; dc_sid=37cb10cf8843223cb9ebca11d00e6de9; uuid_tt_dd=10_19725877220-1639217475457-552295; csrfToken=tNX3XF6y0VyK1WNGp4j87-2_")
  19.  
    .build();
  20.  
    Response response = client.newCall(request).execute();

拓展知识

关于Http状态码

学新通

 关于OkHttp

如何发起Get请求:

  1.  
    OkHttpClient client = new OkHttpClient();String run(String url) throws IOException {
  2.  
    Request request = new Request.Builder()
  3.  
    .url(url)
  4.  
    .build();
  5.  
     
  6.  
    try (Response response = client.newCall(request).execute()) {
  7.  
    return response.body().string();
  8.  
    }
  9.  
    }

如何发起Post请求:

  1.  
    public static final MediaType JSON
  2.  
    = MediaType.get("application/json; charset=utf-8");OkHttpClient client = new OkHttpClient();String post(String url, String json) throws IOException {
  3.  
    RequestBody body = RequestBody.create(JSON, json);
  4.  
    Request request = new Request.Builder()
  5.  
    .url(url)
  6.  
    .post(body)
  7.  
    .build();
  8.  
    try (Response response = client.newCall(request).execute()) {
  9.  
    return response.body().string();
  10.  
    }
  11.  
    }

总结

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgfibef
系列文章
更多 icon
同类精品
更多 icon
继续加载