最近在看 Okhttp 的源码。不得不说源码设计的很巧妙,从中能学到很多。其实网上关于 Okhttp 的文章已经很多了,自己也看了很多。但是俗话说得好,好记性不如烂笔头,当你动手的时候,你会发现你在看的时候没有注意到的很多细节。本次要分析的 Okhttp 版本是 3.8.1,在 gradle 中引用如下:implementation 'com.squareup.okhttp3:okhttp:3.8
转载 2024-03-31 08:47:30
470阅读
OkHttpClient client=new OkHttpClient.Builder() .connectTimeout(60, TimeUnit.SECONDS) //设置连接超时 .readTimeout(60, TimeUnit.SECONDS) //设置读超时 .writeTimeout(60,TimeUnit.SECONDS)
转载 2024-10-11 21:28:33
153阅读
AirWatch浏览器作为客户端应用程序,提供了一个安全,方便和易于管理的浏览器替代品使用本地的智能移动设备上网浏览。AirWatch浏览器让您的企业在利用移动技术带来的好处的同时尽量减少它的干扰和风险。它保证了所有网上交易等行为的安全性,并限制互联网访问自定义的网站。此外,您还可以通过应用定制配置到浏览模式,为您的组织工作更好地满足独特的业务和设备用户的需求。AirWatch Browser选用
# Android OkGo 设置 User-Agent (UA) 的方法 在 Android 开发中,当我们使用网络请求库进行网络操作时,了解如何自定义请求的 User-Agent(UA)是一个重要的技能。OkGo 是一个开源的 Android 网络请求框架,它提供了简单易用的 API,让开发者能够便捷地进行网络请求。 ## 什么是 User-Agent? User-Agent 是 HTT
原创 10月前
93阅读
CURL模拟POST请求curl可以使用url的方式来模拟浏览器传输数据,是很有用的一个功能。curl的操作可以分为4步:1、初始化:curl_init() 2、设置属性值:curl_setopt() 3、执行:curl_exec() 4、退出关闭:curl_close()测试: 模拟一个php文件(2.php)向另一个php文件(3.php)发送post请求,并接收其返回值进行输出的过程。po
# 如何在axios中设置requestBody ## 概述 在使用axios发送POST请求时,有时需要设置requestBody传递数据。本文将向你介绍如何在axios中设置requestBody,并给出详细的步骤和代码示例。 ## 步骤 以下是设置requestBody的具体步骤,我们可以用表格形式展示: | 步骤 | 描述 | | --- | --- | | 1 | 创建一个axio
原创 2024-07-10 04:23:21
80阅读
### Android OkGo 设置Content Type 作为一名经验丰富的开发者,我将为你详细介绍如何在Android OkGo设置Content Type。首先,我们需要了解整个流程,然后逐步实现每一个步骤。 #### 流程步骤: | 步骤 | 描述 | |----|----| | 1 | 创建OkHttpClient | | 2 | 创建OkGo实例 | | 3 | 设置Con
原创 2024-04-28 04:30:48
298阅读
# Android 中使用 RequestBody 设置 FormData 在 Android 开发中,发送 HTTP 请求是一个常见的需求。特别是在与服务器进行数据交互时,FormData 格式被广泛采用。本文将详细介绍如何在 Android 中使用 `RequestBody` 来设置 FormData,并通过代码示例加以说明。 ## 什么是 FormData? FormData 是一种互
原创 10月前
59阅读
HTTP   1.1的简要介绍           HTTP   1.1是一个基于文本的互联网实体信息交互主流协议,这里的实体可以是WAP兼容浏览器之类的用户终端,可以是WAP网关之类的代理服务器,也可以是Java   servlet之类的源服务器程序。它们之间的交互信息就
转载 5月前
28阅读
 项目地址:https://github.com/jeasonlzy该库是封装了okhttp的网络框架,可以与RxJava完美结合,比Retrofit更简单易用。支持大文件上传下载,上传进度回调,下载进度回调,表单上传(多文件和多参数一起上传),链式调用,可以自定义返回对象,支持Https和自签名证书,支持cookie自动管理,支持四种缓存模式缓存网络数据,支持301、302重定向,扩展
转载 2024-02-06 11:39:42
101阅读
OKhttp中的okio、拦截器、响应前言:本篇博客将由浅入深地对OKhttp进行解析,包括基本使用、okio、拦截器和响应等内容,和读者一起全面系统地了解OKhttp的知识,深入了解Android客户端网络请求方法及过程,学习OKhttp采用的设计模式和架构。一、OKhttp概述:HTTP是现代应用常用的一种交换数据和媒体的网络方式,高效地使用HTTP能让资源加载更快,节省带宽。OkHttp是一
okhttp原理详解一、okhttp工作的大致流程1.1、整体流程1.2、各大拦截器的原理解析1.2.1、RetryAndFollowUpInterceptor:负责重定向1.2.2、BridgeInterceptor1.2.3、CacheInterceptor1.2.4、ConnectInterceptor:负责与服务器建立连接1.2.5、CallServerInterceptor:负责从服务
这里我们介绍下使用自定义注解,加aop来实现日志的存储首先自定义注解 import com.etc.mainboot.enums.BusinessType; import com.etc.mainboot.enums.OperatorType; import java.lang.annotation.*; /** * 操作日志记录处理 */ @Documented @Target({Ele
在状态代码中有介绍过Http响应的报头:一般由一个状态行、一些响应报头、一个空行和一些相应的文档构成。这一章中是详细的介绍。感觉大部分都是概念性的东西,一半以上都是需要记忆的,不过使用的多了就自然记住了。前面提到过设置报头的方法:setHeader(String headerName, String headerValue);但HttpServletRequest提供了几个简便的方法,如下:• s
转载 2024-10-11 08:33:53
76阅读
OkHttp的理解和使用OkHttp1、什么是OkHttp2、OkHttp的作用3、Okhttp的基本使用3.1、Http请求和响应的组成3.2、OkHttp请求和响应的组成3.3、GET请求同步方法3.4、GET请求异步方法3.5、post请求方法3.6、POST请求传递参数的方法总结3.6.1、Post方式提交String3.6.2、Post方式提交 `流`3.6.3、Post方式提交文件3
转载 2023-10-20 11:55:04
479阅读
一、拦截器1.添加拦截器的作用:每次在请求过程中就会回调一次intercept方法2.拦截器的回调方法里我们可以做那些事情:当前的请求还没有发给服务器,比如我们在与服务器通信的时候,一个应用中很多地方都会跟服务器发起通信。不同的接口请求都希望你带上你的应用版本号,那么我们就需要给每个request对象添加请求参数带给服务器。因为我们在每个请求都以添加请求头的方式添加请求参数带给服务器就会很麻烦。因
转载 2024-09-22 22:19:27
173阅读
OkGo是封装了okhttp的网络框架,可以与RxJava完美结合,比Retrofit更简单易用。支持大文件上传下载,上传进度回调,下载进度回调,表单上传(多文件和多参数一起上传),链式调用,可以自定义返回对象,支持Https和自签名证书,支持cookie自动管理,支持四种缓存模式缓存网络数据,支持301、302重定向,扩展了统一的上传管理和下载管理功能。今天自己新建了一个Demo,试了一下使用o
## 教你实现 OKGo 架构 作为一名刚入行的小白,理解和实现 OKGo 架构可能会让你感到挑战,然而本文将为你解析整件事情的流程、每一步需要做什么以及相关的代码示例,帮助你顺利实现 OKGo 架构。 ### OKGo 架构流程 首先,我们需要了解实现 OKGo 架构的基本流程。以下是整个流程的简要概述: | 步骤 | 描述
原创 9月前
14阅读
1、发送POST请求注意事项   POST请求必须设置ContentType请求头的值为application/x-www.form-encoded。表单的enctype默认值就是为application/x-www.form-encoded,因为是默认值,大家可能会忽略。当设置了<form>的enctype=” application/x-www.form-encoded”时,等同
转载 2024-04-06 23:25:46
609阅读
 okgo概念性的东西我就不赘述了,百度一大堆,直接上具体的使用过程。首先引入依赖:implementation 'com.lzy.net:okgo:+'我不知道这个版本号,所以直接用+来获取最新版本了。引入依赖后需要在Application中初始化:OkGo.getInstance().init(this);摒弃所有花里胡哨的操作,要在application的oncreate()方法中
  • 1
  • 2
  • 3
  • 4
  • 5