- 浏览: 80039 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (110)
- 异常信息 (3)
- JVM (3)
- Maven (2)
- 安全加密 (4)
- server服务类 (8)
- 前端技术类 (7)
- 设计模式 (2)
- memcached (0)
- mongodb (3)
- pinyin4j (1)
- struts2 (1)
- 杂烩 (26)
- 爬虫 (3)
- Java反射 (2)
- RMI (1)
- Velocity (2)
- node.js (0)
- GIT (4)
- ffmpeg与java (1)
- Spring Boot (0)
- Linux (3)
- Spring (4)
- 七牛云服务 (1)
- shell (2)
- python (0)
- JNI实现Java和其他语言的通信 (0)
- nutz (1)
- zookeeper (1)
- dubbo (0)
- Druid数据库连接池 (1)
- redis (14)
- hessian (0)
- RabbitMQ (0)
- ActiveMQ (1)
- JFinal极速 web 开发框架 (0)
- solr (0)
- jersey【RESTful Web Services in Java】 (0)
- GO学习 (6)
- nginx (1)
- TapeStry (2)
- Disruptor,并发 (1)
- Mybatis (1)
最新评论
-
qii404:
推荐另一个Redis可视化客户端,开源并且跨平台支持,性能可以 ...
redis可视化工具RedisClient使用
官方地址:https://github.com/square/okhttp/
一个处理网络请求的开源项目,是安卓端最火热的轻量级框架
简单测试okhttp Get请求
测试okhttp Post请求
一个处理网络请求的开源项目,是安卓端最火热的轻量级框架
<dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>3.10.0</version> </dependency>
简单测试okhttp Get请求
package com.sb.okhttp.okhttp; import java.io.IOException; import okhttp3.Call; import okhttp3.Callback; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; public class Test { // 创建OkhttpClient对象 OkHttpClient client = new OkHttpClient(); /** * okhttp get 同步请求 */ public void testGet(String url) { Request request = new Request.Builder().get().url(url) // 请求地址 .build();// 创建Request对象、 Response response = null; try { // 执行请求并获取Response对象 response = client.newCall(request).execute(); } catch (IOException e) { e.printStackTrace(); } if (null != response) { if (response.isSuccessful()) {// 请求成功 System.out.println(response.code());// 状态码 System.out.println(response.message());// message try { String res = response.body().string(); System.out.println(res); } catch (IOException e) { e.printStackTrace(); } } else { System.out.println("请求失败"); } } else { System.out.println("请求失败"); } } /** * okhttp get 异步请求 */ public void asynchronousGet(String url){ Request request = new Request.Builder().get().url(url) // 请求地址 .build();// 创建Request对象 client.newCall(request).enqueue(new Callback() { public void onResponse(Call arg0, Response response) throws IOException { //注:onResponse 回调会在子线程中执行,而不是主线程 if (response.isSuccessful()) {// 请求成功 System.out.println(response.code());// 状态码 System.out.println(response.message());// message try { String res = response.body().string(); System.out.println(res); } catch (IOException e) { e.printStackTrace(); } } else { System.out.println("请求失败"); } } //注:onFailure 回调会在子线程中执行,而不是主线程 public void onFailure(Call arg0, IOException arg1) { System.out.println("请求失败"); } }); } public static void main(String[] args) { Test t = new Test(); String url = "http://www.baidu.com"; //t.testGet(url); t.asynchronousGet(url); } }
测试okhttp Post请求
package com.sb.okhttp.okhttp; import java.io.File; import java.io.IOException; import okhttp3.Call; import okhttp3.Callback; import okhttp3.FormBody; import okhttp3.MediaType; import okhttp3.MultipartBody; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.RequestBody; import okhttp3.Response; public class TestPost { //数据类型json public static final MediaType mediaType = MediaType.parse("application/json;charset=utf-8"); //数据类型File public static final MediaType mediaType_file = MediaType.parse("File/*"); OkHttpClient client = new OkHttpClient(); /** * Post提交Json数据 * @param url 提交的地址 * @param json 提交啊的json数据 * @return 返回post之后返回的结果数据 */ public String postJson(String url,String json){ RequestBody body = RequestBody.create(mediaType,json); Request request = new Request.Builder().url(url).post(body).build(); Response response = null; try { response = client.newCall(request).execute(); if(null!=response){ if(response.isSuccessful()){ return response.body().string(); } } } catch (IOException e) { e.printStackTrace(); } return null; } /** * okhttp 模拟表单提交 * @param url post的地址 */ public void postKeyValue(String url ){ FormBody.Builder formBody = new FormBody.Builder();//创建表单请求体 formBody.add("name","zbb"); formBody.add("age","26"); Request request = new Request.Builder() //创建请求对象 .url(url) .post(formBody.build()) //传递请求体 .build(); client.newCall(request).enqueue(new Callback() { public void onResponse(Call call, Response res) throws IOException { //请求成功响应后回调 if(res.isSuccessful()){ String result = res.body().string(); System.out.println(result); } } public void onFailure(Call call, IOException arg1) { //请求失败后回调 //....此处代码省略 } }); } /** * okhttp 上传File对象 * @param filePath file路径 * @param url 提交到的地址 */ public void postFile(String filePath,String url){ File file = new File(filePath); RequestBody body = RequestBody.create(mediaType_file,file); Request request = new Request.Builder() .url(url) .post(body) .build(); client.newCall(request).enqueue(new Callback() { public void onResponse(Call arg0, Response arg1) throws IOException { //请求成功响应后的回调 //..... } public void onFailure(Call arg0, IOException arg1) { //请求失败后的回调 //..... } }); } /** * okhttp post 既传递表单参数也提交File * @param file 文件对象 * @param url 提交到的地址 */ public void postMultipartBody(File file,String url){ MultipartBody body = new MultipartBody.Builder() .setType(MultipartBody.FORM) .addFormDataPart("name","zbb") .addFormDataPart("age","26") .addFormDataPart("f",file.getName(), RequestBody.create(mediaType_file,file)) .build(); Request request = new Request.Builder() .url(url) .post(body) .build(); client.newCall(request).enqueue(new Callback() { public void onResponse(Call arg0, Response arg1) throws IOException { //请求成功响应后的回调 //..... } public void onFailure(Call arg0, IOException arg1) { //请求失败后的回调 //..... } }); } public static void main(String[] args) { } }
发表评论
-
jmeter简单使用,仅供自己记录,更多jemeter使用请参考其官网
2018-10-20 13:34 880jemter 官网地址http://jmeter.apache ... -
转载:EL表达式处理字符串 是否 包含 某字符串 截取 拆分
2018-05-14 12:34 595EL表达式处理字符串 是否 包含 某字符串 截取 拆分.... ... -
OpenVpn--windows客户端连接简单配置
2018-01-31 11:23 716第一步: 在config目录下新建一个.ovpn文件,例 ... -
冒泡排序
2017-12-06 11:36 358import java.util.Arrays; ... -
SecureCRT显示乱码
2017-11-30 11:07 468... -
常见密文类型
2017-11-08 15:30 1422... -
Eclipse 修改项目名称
2017-11-03 11:37 345Eclipse 修改项目名称 1:修改项目目录下:.proje ... -
Gradle windows 安装
2017-08-22 11:11 304下载地址http://services.gradle.org/ ... -
测试 java8 Lambda
2017-07-05 15:33 297概念: Lambda 表达式,也可称为闭包,它是推动 J ... -
Java 加载Properties文件
2017-05-03 14:39 3781。使用java.util.Properties类的load( ... -
Eclips在线安装svn插件
2017-03-24 12:12 255http://subclipse.tigris.org/upd ... -
常见媒体类型
2017-02-08 11:27 439常见的媒体类型如 text/html : HTM ... -
java图片处理Thumbnailator 包的使用
2017-02-07 15:31 4617从图像文件创建缩略图 Thumbnails.of(n ... -
4种压缩格式的特征的比较
2017-01-10 15:15 5984种压缩格式的特征的比较 -
常见状态码
2016-12-20 11:35 3681xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态 ... -
windows命令
2016-09-02 16:26 231windows运行打开服务命令 1. gpedit.msc- ... -
Eclipse 常用快捷键
2016-08-31 16:14 433Ctrl+1 快速修复(最经典的快捷键,就不用多说了,可以解决 ... -
java时间加减
2016-08-25 13:29 578public static Date addOrMinusYe ... -
java 如何判断操作系统是Linux还是Windows
2016-04-22 14:22 2587String s = System.getProperty(& ... -
页面上调用 QQ
2014-09-24 00:44 928<A href="tencent://mess ...
相关推荐
okHttp是当前最流行的网络框架之一,我参考了网上,别人的一些分装,自己封装了一下,放在这,供大家下载,希望和大家交流,学习
okhttp学习简单示例代码,附带后端server源码下载
android网络框架MVP XRjava OKhttp Retrofit 最简单最基础使用,适合新手学习练习,或者直接从该基础架构开始写程序
通过此文档可以大概了解OKhttp框架的构成,能够简单使用它。
RxJava+Retrofit2+Okhttp3主流网络框架相结合最简单易懂的demo 返回Object通用类型 回调CallbackListener重新封装
Rxjava+Retrofit+Okhttp封装 demo 里面有OKttp拦截器的设置,网络如何调用的简单demo。只要是提供自己以后方便直接拷贝。没有过去封装,适合学习
为了更好的在应对网络访问,学习下okhttp还是蛮必要的,本篇博客首先介绍okhttp的简单使用,主要包含: 一般的get请求 一般的post请求 基于Http的文件上传 文件下载 加载图片 支持请求回调,直接返回对象、...
【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发...有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 鼓励下载和使用,并欢迎大家互相学习,共同进步。
之前学习完Retrofit+Rxjava之后写了一篇关于封装的博客,发出后受到大家的关注以及使用,由于不断的完善之前的项目,所以决定把最新的项目封装过程讲解出来,供大家查看! Retrofit介绍: Retrofit和okHttp师出同门...
主要给大家介绍了关于OkHttp3中默认不保持Cookie的解决方法,文中先对OKhttp3中的cookies进行了简单的介绍,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
毕设&课设&项目&实训-基于Android 移动基础原生开发的一个智慧城市题材的简易app,app数据全部使用okhttp3请求于后台服务器! 【项目资源】: 包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、...
这个Dmeo简单使用了Retrofit实现网络请求,对于想要学习Retrofit框架的人可以看看,很有帮助
天气数据选择和风天气的数据,因为它的数据相对简单一些,比较适合新手学习,并且每天提供3000次免费的请求。这个项目中使用了LitePal、OkHttp、GSON、Glide4个库。其中LitePal用于对数据库进行操作,OkHttp用于进行...
其中会使用一些比较新的流行技术,当做学习 目前使用到的(used Library) 响应式编程:rxJava 数据库:realm,尽管有些坑,但还是在继续使用(线程问题实在麻烦,还是换回SQLite) orm:greenDao 图片加载:glide 网络...
iRead 2.0版介绍 卢比(阅读选择)Kotlin版是Kotlin开发一个简单的应用程序,主要用来学习语言Kotlin,结合最新的框架。图片展示Gif显示下载链接开源项目Kotlin:1.3.0 改造:2.5.0 rxandroid:1.2.1 rxkotlin:...
之前,我没有学过Retrofit,但最近公司的新项目使用了Retrofit、Rxjava和OkHttp来进行封装,使用起来非常简便,增加代码的美观程度,也降低了耦合度,这是一个非常棒的框架,特别是这三者一起使用。简介Retrofit是...
项目主要用于入门kotlin语言和谷歌推荐的MVVM架构,使用了一些Jetpack组件来配合MVVM使用,采用了很多流行的开源库, Okhttp , Retrofit , Rxjava , Glide , Livedatabus等,代码逻辑简单易懂,仅适用入门 ...
本次资源是上手android studio 进行安卓开发的第一个小示例,目的是学习OKhttp3的操作,连接api,连接http协议等操作,完成简单的登录操作。
超级简单的 高效的 android 网络访问架构 RxJava retrofit2.0 json okhttp,几行代码就能实现访问网络 并且将数据显示到界面.zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
这个APP使用的框架有:著名的网络框架 retrofit2 自然包括okhttp等数据库操作 GreenDao Sql 语句很容易产生错误,如果你是大神请忽略*butterknife 框架 减少你写findviewbyid onclick 等重复代码这个demo并不是十分...