okhttp

sping boot集成okhttp实现websocket客户端实例

前提是你 提交于 2020-04-30 13:12:52
  关于websocket服务端的实现网上比较多,比较流行的是spring boot本身的spring-boot-starter-websocket,至于客户端的话,目前流行的是java-websocket框架,这里拿okhttp框架举个例子说说:   1、引入okhttp: < dependency > < groupId > com.squareup.okhttp3 </ groupId > < artifactId > okhttp </ artifactId > < version > 4.2.2 </ version > </ dependency >     2、主要实现类继承websocket监听器: package com.wlf.ws; import com.alibaba.fastjson.JSONObject; import com.wlf.entity.WSResponse; import lombok.extern.slf4j.Slf4j; import okhttp3.Response; import okhttp3.WebSocket; import okhttp3.WebSocketListener; import okio.ByteString; import java.io.IOException; @Slf4j public class

Android课程设计——博学谷1.0

て烟熏妆下的殇ゞ 提交于 2020-04-27 11:35:39
  本文讲述了如何应用大三下学期智能移动终端开发技术课程所学知识,完成包含服务器端、客户端程序的应用——博学谷登录模块的开发,结合java语言基本知识,例如:字符串、列表、类、数据库读写等,设计、实现一个以java语言为基础的博学谷的登录模块。该模块能够实现远程网络验证登录的基本功能,涉及到所用java库的主要类。    鉴于之前版本的博学谷使用的是Android平台上一个轻量级的存储类SharedPreference实现数据存储,虽然容易理解和使用,但是无法实现和服务端和数据库的数据交互,体现出只能本地使用的局限性。所以本综合实验采用当前主流的处理网络请求的OKhttp3开源框架,实现远程网络数据的传送和获取,从而完成博学谷登录模块功能的设计与实现。   除了实现登录、立即注册和找回密码的通过网络请求操作数据库这三个功能外,我们在用户登录和退出时,分别发送一个网络请求,传送登陆者的用户名和本地参数,本地参数例如有本机IP,登录设备号等等。本次实验只是完成了上传用户名,本地参数尚未添加。服务端接收到请求后,获得登陆者的用户名,获取服务器系统时间,将该名用户的登录和退出的时间登记在数据库中。   另外在点击主界面的记录按钮时,可以跳转到另一个界面,发送一个网络请求,服务器接收到以后,查询数据库服务器,返回给客户端一个json串,用于展示用户的登录记录。 服务器端 :  

andorid jar/库源码解析之retrofit2

牧云@^-^@ 提交于 2020-04-27 07:45:56
目录: andorid jar/库源码解析 Retrofit2:   作用:      通过封装okhttp库,来进行web通讯,并且使用动态代理的方式,来调用接口地址,通过回调赋值结果。   栗子:   定义一个接口,用于访问使用。 public interface IServiceApi { @FormUrlEncoded @POST( "login" ) Call <LoginResult> login(@Field("name") String name, @Field("pwd" ) String pwd); @GET( "getinfo" ) Call <UserInfo> getinfo(@Query("token" ) String token); @GET( "getinfo2" ) Call <UserInfo> getinfo2(@Query("token" ) String token); }   调用接口1.可以在main中调用,因为是通过异步执行(enqueue) Retrofit retrofit = new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create()).baseUrl("http://192.168.86.11:8087/" ).build();

Android(Java)下载断点续传的实现

二次信任 提交于 2020-04-26 16:51:02
Android(Java)下载断点续传的实现 一、要注意的地方 1. 追加文件 2. 跳过输入流 3.range header 坑点1. 坑点2 坑点3. 二、代码 方法1 方法2 最近在做一个下载文件的功能的时候,因为要支持断点续传,虽然整体上思路很清晰,也比较简单,但是在做的过程中还是遇到了几个坑,特意在此记录一下,也重新梳理下下载断点续传的实现过程。 一、要注意的地方 这里先把几个坑点先说明一下: 1. 追加文件 如果你写入文件用的是FileOutputStream,那么一定要用两参的构造方法: ```java new FileOutputStream(file,true); // 第二个参数为true ``` 2. 跳过输入流 当你用方法1(通过inputStream的skip)去实现断点续传的时候,skip方法有坑,简单来说就是skip方法不能保证一定会跳过你指定的字节数,所以你自己要做一个简单处理: private void skip ( InputStream in , long offset ) throws IOException { long skip = 0 ; do { offset -= skip ; skip = in . skip ( offset ) ; if ( skip <= 0 ) { break ; } } while ( skip !=

andorid jar/库源码解析之okhttp3

吃可爱长大的小学妹 提交于 2020-04-26 16:01:26
目录: andorid jar/库源码解析 Okhttp3:   作用:      用于网络编程(http,https)的快速开发。   栗子: // okHttpClient定义成全局静态,或者单例,不然重复new可能导致连接数耗尽 OkHttpClient okHttpClient = new OkHttpClient(); String url = "https://www.test.com" ; byte [] data = new byte [] { 1 }; okhttp3.RequestBody body = okhttp3.RequestBody.create(MediaType.parse("application/octet-stream" ), data); // Request Request request = new Request.Builder().addHeader("Authorization", "Bearer XXXXXXXX" ).url(url).post(body).build(); // Response Response response = okHttpClient.newBuilder().build().newCall(request).execute(); // 注意:这里是string不是toString final

OkHttps 三步实现 生命周期绑定

泄露秘密 提交于 2020-04-26 15:03:39
第一篇: OkHttp 优雅封装 OkHttps 之 气海雪山初探 第二篇: OkHttp 优雅封装 OkHttps 之 上传下载解密 第三篇: OkHttp 优雅封装 OkHttps 之 回调线程魔变 简介 OkHttps 是 OkHttp 的轻量封装包。和 Retrofit 相比,它更加的开箱即用,并且 API 更加自然和语义化。它用起来很优美,有点像 RxJava 却比 RxJava 更简单。 项目地址 Gitee: https://gitee.com/ejlchina-zhxu/okhttps GitHub: https://github.com/ejlchina/okhttps 起步 Maven < dependency > < groupId > com.ejlchina </ groupId > < artifactId > okhttps </ artifactId > < version > 1.0.4 </ version > </ dependency > Gradle implementation 'com.ejlchina:okhttps:1.0.4' 安卓中使用需要把 JDK 版本调成 1.8,在 app 模块的 build.gradle 中加入以下配置即可: android { // 省略其它配置.. compileOptions {

14 微服务电商【黑马乐优商城】:day02-springcloud(搭建Eureka注册中心)

女生的网名这么多〃 提交于 2020-04-24 18:41:21
本项目的笔记和资料的Download,请点击这一句话自行获取。 day01-springboot(理论篇) ; day01-springboot(实践篇) day02-springcloud(理论篇一) ; day02-springcloud(理论篇二) ; day02-springcloud(理论篇三:搭建Eureka注册中心) ; day02-springcloud(理论篇四) 14 微服务电商【黑马乐优商城】:day02-springcloud 0.学习目标 了解系统架构的演变 了解RPC与Http的区别 掌握HttpClient的简单使用 知道什么是SpringCloud 独立搭建Eureka注册中心 独立配置Robbin负载均衡 6.Eureka注册中心 6.1.认识Eureka 首先我们来解决第一个问题,服务的管理。 问题分析 在刚才的案例中,user-service对外提供服务,需要对外暴露自己的地址。而consumer(调用者)需要记录服务提供者的地址。将来地址出现变更,还需要及时更新。这在服务较少的时候并不觉得有什么,但是在现在日益复杂的互联网环境,一个项目肯定会拆分出十几,甚至数十个微服务。此时如果还人为管理地址,不仅开发困难,将来测试、发布上线都会非常麻烦,这与 DevOps的思想 是背道而驰的。 网约车 这就好比是 网约车出现以前,人们出门叫车只能叫出租车

andorid jar/库源码解析

て烟熏妆下的殇ゞ 提交于 2020-04-24 12:48:26
前言   本篇作为开篇,会大体上说明,需要解读源码的,类库,或者jar。 序   原本,类库和jar的系列准备写到逆向系列课程的,但是那个东西,在写了两篇,就没有后续了,现在也不知道从哪里开始了, 只能等后期想好了,再开篇单独写吧。 目录:   EventBus、Dagger、okhttp、retrofit、butterknife、zxing、Bolts、RxJava   org.apache.commons.codec、org.apache.commons.lang、org.apache.commons.io   io.netty、io.fabric、cat.ereza、javax、msgpack、zip4j   com.davemorrissey.labs、com.daimajia.easing、com.arcsoft.livebroadcast、pl.droidsonroids.gif 厂牌库:   XXX 工具库:    来源: oschina 链接: https://my.oschina.net/u/4265622/blog/3685595

API Request | OkHttp | api request via okhttp with two objects

不打扰是莪最后的温柔 提交于 2020-04-18 05:43:35
问题 im new in API Networking so here comes a question about it. Best beginning ever, but i had too much code... the json file i want to parse: { "id":"541.23", "username":"exampleUser", "links":{ "TWITTER":null, "YOUTUBE":"https://www.youtube.com/user/exampleUser" "INSTAGRAM":null, "TWITCH":null, "MIXER":"https://mixer.com/user/" "DISCORD":"DiscordUser#4576" } } for this code is used okhttp and gson: class MainActivity : AppCompatActivity() { lateinit var playerStats: PlayerStats override fun