186 天前 / Tony沈哲
首页下载 APPIT 技术基于 Kotlin + OkHttp 实现易用且功能强大的网络框架(一)fengzhizi715 关注赞赏支持基于 Kotlin + OkHttp 实现易用且功能强大的网络框架(一)okhttp-extension 是针对 okhttp 3 增强的网络框架。使用 Kotlin 特性编写,提供便捷的 DSL 方式创建网络请求,支持协程、响应式编程等等。 其 core 模块只依赖 OkHttp,不会引入第三方库。 okhttp-extension 可以整合 Retrofit、Feign 框架,还提供了很多常用的拦截器。 另外,okhttp-extension 也给开发者提供一种新的选择。
310 天前 / 小姐姐味道
不羡鸳鸯不羡仙,一行代码调半天。原创:小姐姐味道(微信公众号 ID:xjjdog),欢迎分享,转载请保留出处。 要使用 OkHttp,一定要知道它的透明压缩,否则死都不知道怎么死的;或者活也不知道为什么活的不舒坦。 反正不是好事。 什么叫透明压缩呢?OkHttp 在发送请求的时候,会自动加入 gzip 请求头 Accept-Encoding:gzip。所以,当返回的数据带有 gzip 响应头时 Content-Encoding=gzip,OkHttp 会自动帮我们解压数据。(Accept-Encoding 和 Content-Encoding 是一对请求头,分别对应着请求和返回) 为什么要进行压缩呢?因为它能大幅减少传输的容量。
367 天前 / Android开发编程
okhttp 是谁?做什么的? 一个处理网络请求的开源项目,是安卓端最火热的轻量级框架, 用于替代 HttpUrlConnection 和 Apache HttpClient(android API23 6.0 里已移除 HttpClient,现在已经打不出来) 功能: get,post 请求 文件的上传下载 加载图片 ( 内部会图片大小自动压缩) 支持请求回调,直接返回对象、对象集合 支持 session 的保持 优点: 允许连接到同一个主机地址的所有请求,提高请求效率 共享 Socket,减少对服务器的请求次数 通过连接池...
511 天前 / u553041
在 OkHttp 框架中,已经集成好了网络请求代理 Proxy 的功能,我们只需要调用如下 API,即可实现使用代理地址访问目标服务器:OkHttpClient.Builder builder = newOkHttpClient.Builder(); // 设置代理地址 SocketAddress sa = newInetSocketAddress("代理服地址", 代理端口); builder.proxy(newProxy(Proxy.Type.HTTP, sa)); OkHttpClient client = builder.build(); Request.Builder requestBuilder = newRequest.Builder(); requestBuilder.url("目标服务器地址"); client.newCall(requestBuilder.build());那么什么是代理?该如何实现代理呢?我将用 3...
533 天前 / u553041
OkHttp,从名字也能感觉到这套框架似乎与 http 协议有着千丝万缕的关系。事实上也确实如此,OkHttp 所做的各种操作都是建立在 http 协议基础之上的。因此在理解并自己手写 OkHttp 之前,首先需要了解什么是 http 协议,以及 http 协议具体有哪些规则 ( 或者说是格式) 为什么需要 http 协议 一般情况下,网络数据由客户端向服务端发送,数据进入互联网之后,是以二进制流 (Stream)的形式进行传播,过程如下图所示: 客户端浏览器访问网页 “www.sample.com” 并进行登录操作,需要向服务端发送用户名与密码;然后服务端接收到客户端的请求之后...
774 天前 / 承香墨影
wolfcstech | 作者 承香墨影 | 校对 https://www.wolfcstech.com/2017/02/23/OkHttp 实现分析之 Websocket| 原文 前段时间写了篇文章,讲解了如何使用 OkHttp 实现 WebSocket 通信,但是只停留在一些使用和理论上,分享出来各项数据还不错。本来想继续写一篇 OkHttp 关于 WebSocket 源码的分析文章。但搜索了一下,发现有一个个人博客写的文章非常详细,我就不再重复输出了,今天就给你带来这篇优秀的文章,希望对大家有帮助。
789 天前 / OPPO互联网技术
点击关注“OPPO 互联网技术”,阅读更多技术干货 OkHttp 应该是目前 Android 平台上使用最为广泛的开源网络库了,Android 在 6.0 之后也将内部的 HttpUrlConnection 的默认实现替换成了 OkHttp。 大部分开发的同学可能都有接触过 OkHttp 的源码,但很少有比较全面的阅读和了解的,目前网络上的大部分源码解析文章也都是点到为止,并且大段的贴源码,这种解析方式是我无法认可的,因此才有了想要重新写一篇解析 OkHttp 源码的想法。
793 天前 / 承香墨影
一、序 OkHttp 应该算是 Android 中使用最广泛的网络库了,我们通常会利用它来实现 HTTP 请求,但是实际上它还可以支持 WebSocket,并且使用起来还非常的便捷。 那本文就来聊聊,利用 OkHttp 实现 WebSocket 的一些细节,包括对 WebSocket 的介绍,以及在传输前如何做到鉴权、长连接保活及其原理。 二、WebSocket 简介 2.1 为什么使用 WebSocket?我们做客户端开发时,接触最多的应用层网络协议,就是 HTTP 协议,而今天介绍的 WebSocket,下层和 HTTP 一样也是基于 TCP 协议,是一种轻量级网络通信协议,也属于应用层协议。
962 天前 / 技术小黑屋
一个小技巧提升 OkHttp 请求稳定性Oct 7th, 2019 OkHttp是可以说是Android开发中,每个项目都必需依赖的网络库,我们可以很便捷高效的处理网络请求,极大的提升了编码效率。但是有时候,我们使用OkHttp也会遇到这样的问题 崩溃的stacktrace1234567891011E AndroidRuntime: FATAL EXCEPTION: OkHttp DispatcherE AndroidRuntime: Process: com.example.okhttpexceptionsample, PID: 13564E AndroidRuntime: java.lang.NullPointerException: blablablaE AndroidRuntime: at com.example.okhttpexceptionsample.MainActivity$createNPEInterceptor$1.in...
1104 天前 / 承香墨影
虽然 Android Studio 的负责人 Jeffery 已经澄清,只是 Kotlin-First 而不是 Kotlin-Must,并不需要将 App 用 Kotlin 重写一遍。但是 OkHttp 已经开始用 Kotlin 重写的工作,我们来看看这次重写后带来的差异。 一. 序在今年的 Google I/O 大会上,Google 宣布将以 Kotlin 作为 Android 开发的一级编程语言。而同天,Google 就开源了只支持 Kotlin 的 Jetpack Compose,以借此呼应这一战略。 消息一出,不少 Android 开发就担心以后是不是只能用 Kotlin 开发了。
1463 天前 / 刘奇1993
引言Android项目必备基本轮子--------异步网络请求框架。先不考虑在手项目的进度,也不管UI组件的深探,先来将Restful客户端的轮子造起来!现在Android 市面上很火的当然是Retrofit+RxJava+OkHttp, 功能强大,简单易用,因此选用这套方案来改造网络库。
1640 天前 / 飞天舞乐
RetrofitCache让retrofit2+okhttp3+rx网络访问添加缓存如此简单。通过注解配置,可以针对每一个接口灵活配置缓存策略;同时让每一个接口方便支持数据模拟,可以代码减小侵入性,模拟数据可以从内存,Assets,url轻松获取。为什么使用RetrofitCache服务端接口不严格按照http缓存策略配置...
1692 天前 / beforenight
RxWebSocket是一个基于okhttp和RxJava封装的WebSocket客户端,此库的核心特点是 除了手动关闭WebSocket(就是RxJava取消订阅),WebSocket在异常关闭的时候(onFailure,发生异常,如WebSocketException等等),会自动重连,永不断连.其次,对WebSocket做的缓存处理,同一个URL,共...
1848 天前 / 马伟奇
okhttp源码特别特别复杂,类涉及较多,导致本文非常长,我相信没有几个人能把本文看完,所以特意录制了跟文章同步的视频。人事面试宝典一 人事面试宝典二 与登录相关面试题一 与登录相关面试题二 与工作中开发有关的面试题一 与工作中开发有关的面试题二 与XMPP相关面试题一 与XMPP相关面试题二 与性能优化相关试题一 与性能优化相关试题二 与性能优化相关试题三...
1858 天前 / Tsy远
对Okhttp3进行二次封装,对外提供了POST请求、GET请求、PATCH请求、PUT请求、DELETE请求、上传文件、下载文件、取消请求、Raw/Json/Gson返回、后台下载管理等功能1 前言之前的一篇文章 Android架构系列-封装自己的okhttp 对okhttp进行了一个简单的封装...