okhttp3专题

okhttp3的详细介绍

这篇文章说下OkHttp的基本用法,是最新的3哦,如果你曾经在网上搜索OkHttp怎么使用发现有些类没有了可能是因为人家说的是2。首先说下OkHttp3是Java和Android都能用,Android还有一个著名网络库叫Volley,那个只有Android能用。导入自己到入jar包,别漏了okio:okhttp-3.3.0.jarokio-1.8.0.jarmaven方式:<dependen

OkHttp3基础使用

目录 前言一、依赖引入二、使用方式2.1 get请求2.1.1 同步请求2.1.2 异步请求2.1.3 取消请求2.1.4 结果处理 2.2 post请求2.2.1 同步post2.2.2 异步post2.2.3 post请求提交多种格式2.2.3.1 post请求提交String、文件2.2.3.2 post请求提交表单2.2.3.3 post请求提交复杂请求体 2.3 请求配置项2.4

使用 OKhttp3 实现 智普AI ChatGLM HTTP 调用(SSE、异步、同步)

SSE 调用 SSE(Sever-Sent Event),就是浏览器向服务器发送一个HTTP请求,保持长连接,服务器不断单向地向浏览器推送“信息”(message),这么做是为了节约网络资源,不用一直发请求,建立新连接。 // 创建请求对象Request request = new Request.Builder().url(String.format(sseApi, seeId))//

Okhttp3系列之(4) - HttpClient和OkHttp调用服务的区别

有关于HttpClient和OkHttp两种调用服务的方式区别,我们先到overstackflow上看看大牛们的讨论。 所以从使用、性能、超时配置方面进行比较 1. 使用 HttpClient和OkHttp一般用于调用其它服务,一般服务暴露出来的接口都为http,http常用请求类型就为GET、PUT、POST和DELETE,因此主要介绍这些请求类型的调用。 HttpClient使用介绍

Okhttp3系列之(3) - SpringBoot下配置Okhttp3工具类

1.添加pom.xml依赖 <dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>3.6.0</version></dependency> 2.封装工具类: import lombok.extern.slf4j.Slf4j;import okhttp3.*;i

Okhttp3系列之(2) - SpringBoot Okhttp3配置工具类

1.添加pom.xml依赖 <dependency><groupId>com.squareup.okhttp3</groupId><artifactId>okhttp</artifactId><version>3.6.0</version></dependency> 2.配置类 import java.security.KeyManagementException;import jav

Okhttp3系列之(1) - 基本使用说明

1. 简介 HTTP是现代应用常用的一种交换数据和媒体的网络方式,高效地使用HTTP能让资源加载更快,节省带宽。OkHttp是一个高效的HTTP客户端,它有以下默认特性: 支持HTTP/2,允许所有同一个主机地址的请求共享同一个socket连接连接池减少请求延时透明的GZIP压缩减少响应数据的大小缓存响应内容,避免一些完全重复的请求 当网络出现问题的时候OkHttp依然坚守自己的职责,它会自

OkHttp3学习

OkHttp3学习之旅: 1、OkHttp3会从很多常见的连接问题中自动恢复,    如果你的服务器配置了多个IP地址,当第一个IP连接失败时,会自动尝试下一个IP    OKHttp3使用前需在build.gradle里面配置以下内容:    compile 'com.squareup.okhttp3:okhttp:3.9.0'    compile 'com.squareu

okhttp3实现post方式上传文件加参数

android开发中上传图片到服务端是再常见不过的功能。直奔主题:项目中用okhttp实现图片+文字参数上传。 我使用的okhttp版本: implementation 'com.squareup.okhttp3:okhttp:3.10.0' 实现代码: //初始化OkHttpClientOkHttpClient client = new OkHttpClient();//

OkHttp3 发送Digest Auth摘要认证

注意OkHttp3 自带的Digest Auth 认证存在循环请求:部分请求如下所示: private static void digestAuth(ApiRequestVo apiRequestVo,Request.Builder requestBuilder,OkHttpClient.Builder okHttpClientBuilder){List<Map<String, Object>>

使用OKHTTP3发送HTTPS请求时,抛出异常:Server chose TLSv1, but that protocol version is not enabled or not support

最近项目上需要使用OKHTTP3发送HTTPS请求,但发现向有些HTTPS服务器发送请求时,会抛出异常,类似: javax.net.ssl.SSLHandshakeException: Server chose TLSv1, but that protocol version is not enabled or not supported by the client. 在网上搜索这个错误,发现

【Android开发】使用OkHttp3下载文件(支持直接下载 / 支持断点续传)

使用OkHttp3下载文件 1.直接下载版本: String filesDirPath = getFilesDir().getPath(); OkHttpClient okHttpClient = new OkHttpClient();Request request = new Request.Builder().get().url(URL).build();Ca

Retrofit OkHttp3 打印日志 网络请求参数配置

1、用过Retrofit的朋友肯定知道使用Retrofit进行网络网络请求非常的方便简洁,但是要打印网络请求的日志还是要自己另想办法。昨天在网上找了一圈,发现要打印日志,大部分的帖子都是引入OkHttp3的日志库。 implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1' 2、通过OkHttp3 对日志和其他网络请求参数进行

Kotlin OKHTTP3和拦截器的使用

注意:在android6.0以后网络请求还需如下配置:  android:usesCleartextTraffic="true" <applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic

Android之网络编程OkHttp3用法全解析

前言 上一篇介绍了OkHttp2.x的用法,这一篇文章我们来对照OkHttp2.x版本来看看,OkHttp3使用起来有那些变化。当然,看这篇文章前建议看一下前一篇文章Android网络编程(五)OkHttp2.x用法全解析。 1.使用前准备 Android Studio 配置gradle: compile 'com.squareup.okhttp3:okhttp:3.2.0'c

retorfit2+okhttp3文件上传下载

创建一个网络请求接口ApiService,后续项目中所有网络请求均在该接口中定义: 常见网络请求格式和参数书写 1 GET方式请求——–无参请求 /**比如完整路径https://api.app.com/vi/my/home.json* baseUrl指的是https://api.app.com/vi/* 显而易见my/home.json是完整路径除baseUrl之外的部分*/@

OkHttp3升级实践与之前2.0对比

Okhttp是一个高效的Http客户端,我们公司的app也采用Okhttp。 OKhttp在过年之前更新到了3.0了。3.0相对与之前的2.0变动比较大,不能直接升级版本后就行,现在讲讲我在将OkHttp升级到3.0过程中需要更改的地方,及okhttp3.0 与之前的2.0的对比。 1,包名改变 包名改了由之前的 com.squareup.http.* 改为 okhttp3.* 我们需要将

okhttp3.logging.HttpLoggingInterceptor 引不进来包问题,kotlin看不了源码

如果你的Idea 没装过kotlin 可能会出现,包已经导进去了,你看不到源码,同时项目还爆红。 可能你找了半天maven 的问题一无所获,最后发现其他项目都没问题,就是这个okhttp3包的问题 然后去搜了okhttp3 这个包是怎么回事 ,据听说 okhttp3 这个项目到了4.X 之后 从java 语言升级成了kotlin ,之后尝试了装了下kotlin 插件 。然后重起Idea ,之后

OkHttp3 中几个拦截器基本功能介绍

RetryAndFollowUpInterceptor 功能:实现重试、跟踪 实现原理: while(true) 死循环的实现。 检验返回的 Response ,如果没有异常(包括请求失败、重定向等),那么执行 return Response, return 会直接结束循环操作,将结果返回到下一个拦截器中进行处理。 检验返回的 Response ,如果出现异常情况,那么会根据 Respo

Okhttp3 配置Https访问(使用PKCS12)证书

STEP 1 放置证书文件 将PKCS12证书和相关的trustStore文件放置在res/raw目录下 STEP2 创建自定义SSLFactory import android.content.Context;import java.io.IOException;import java.io.InputStream;import java.security.KeyStore;im

Okhttp3 设计思想学习

前言 Okhttp的源码其实并不难,难的是对于Http的协议的熟悉程度.比如如何缓存.其实Okhttp参考了当前很多热门的浏览器源码而编写成的客户端.你可以看到很多线程数的设置都参考了主流浏览器.你可以把Okhttp视为一个无渲染界面的浏览器即可. Http缓存 想要看得懂Okhttp拦截器你首先必须对Http协议自带的缓存机制有一定的了解. 这里给出两个参考 1 HTTP 缓存(建议切换到

Okhttp3中设置请求头的两种方式区别

代码: builder.addInterceptor(new Interceptor() {//添加请求头参数@Overridepublic Response intercept(Chain chain) throws IOException {Request original = chain.request();Request request = original.newBuilder().h

项目的网络请求开发中retrofit2和okhttp3的结合使用示例

本文是retrofit2和okhttp3的结合使用的简单示例,逻辑不复杂,示例代码中使用的框架版本是okhttp:4.4.0和retrofit:2.7.2,下文将贴出所有代码: 项目结构: AndroidManifest的配置:  <?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.

Retrofit2+OkHttp3+RxJava网络请求封装

第一步:  添加依赖 //RxJavaimplementation 'io.reactivex:rxjava:1.1.3'//RxAndroidimplementation 'io.reactivex:rxandroid:1.1.0'//retrofitimplementation 'com.squareup.retrofit2:retrofit:2.0.0'//retrofi

retrofit2+okhttp3图片上传及进度监听

1、使用jar包 由于retrofit2与1的写法有很大的变化,并且对okhttp存在着依赖。所以需要确定选择使用方向,以免陷入不必要的坑中。 本篇讲采用retrofit2 + okhttp3做结合使用。在导包过程中本人也遇到了一些不兼容的麻烦,再此做记录。 retrofit-2.1.0.jar、okhttp-3.4.1.jar、okio-1.6.0.jar、converter-gson-2

【图片上传】- Could not initialize class okhttp3.OkHttpClient

【图片上传】Could not initialize class okhttp3.OkHttpClient 爆错原因查看okhttp对应okio版本:查看项目中使用的okhttp版本:解决方式 爆错原因 由于OkHttp依赖于okio,目前OkHttp最新的版本为4.7.2,使用Maven/Gradle导入的话不会出现该问题,出现此问题的原因应该是只是单纯把OkHttp的JAR导