OKHttpUitls工具包post请求
compile 'com.squareup.okhttp3:okhttp:3.4.1' compile 'com.squareup.okio:okio:1.5.0' compile 'com.google.code.gson:gson:2.2.4'
Handler handler=new Handler(){@Override public void handleMessage(Message msg) {int i=msg.what;//等于0失败 if (i==0){String shi = (String) msg.obj;okhttpgetListener.error(shi);}//等于1成功 if (i==1){String json = (String) msg.obj;okhttpgetListener.success(json);}} }; private OkhttpgetListener okhttpgetListener;public void getnetpost(String url,Map<String, String> params){OkHttpClient okHttpClient = new OkHttpClient();//3.x版本post请求换成FormBody 封装键值对参数 FormBody.Builder builder = new FormBody.Builder();for (String key : params.keySet()) {builder.add(key, params.get(key));}Request request = new Request.Builder().url(url).post(builder.build()).build();Call call = okHttpClient.newCall(request);call.enqueue(new Callback() {@Override public void onFailure(Call call, IOException e) {Message message=new Message();message.obj="处理失败";message.what=0;handler.sendMessage(message);}@Override public void onResponse(Call call, Response response) throws IOException {String string = response.body().string();Message message=new Message();message.obj=string;message.what=1;handler.sendMessage(message);}}); }public interface OkhttpgetListener{//失败的方法 void error(String error);//成功的方法 void success(String json); }//主线程获取网络解析后json的方法 public void setOnOKHttpGetListener(OkhttpgetListener okhttpgetListener){this.okhttpgetListener=okhttpgetListener; }
//举例使用
原接口http://www.yulin520.com/a2a/impressApi/news/mergeList?pageSize=10&page=1
MainActivity使用的代码
Map<String,String> map=new HashMap<>(); map.put("page","1"); map.put("pageSize","10");
ok.getnetpost(net1,map);
//调用接口回调方法 取得解析后的json ok.setOnOKHttpGetListener(new Okhttppost.OkhttpgetListener() {
private String net1="http://www.yulin520.com/a2a/impressApi/news/mergeList";
OKHttpUitls工具包post请求相关推荐
- 工具包-POST请求
工具包 import com.alibaba.fastjson.JSONObject; import org.apache.commons.lang.StringUtils; import org.a ...
- 什么猫咪最受欢迎?Python爬取全网猫咪图片,哪一款是你最爱的
工具准备 开发工具:pycharm 开发环境:python3.7, Windows11 使用工具包:requests 项目思路解析 做爬虫案例首先需要明确自己的采集目标,白又白这里采集的是当前网页的所 ...
- 还在这样学 Python?怪不得白费力!
作者 | 元宵大师 责编 | 胡巍巍 出品 | CSDN(ID:CSDNnews) 随着电子信息技术的蓬勃发展,网络数据呈现着爆炸式的增长,全球知名咨询公司麦肯锡称:"数据,已经渗透到当今每 ...
- Struts2的概念及工作原理
Struts2struts2简介 struts2是apache组织的一个开源项目,是一个重量级web框架,由struts1和WebWork合并而成. struts2对ServletAPI进行了全面的封 ...
- 用Java手写一个微型下载资源网站
文章目录 手写一个微型下载资源网站[Java实现用户注册.登陆.下载功能] 一.技术栈 二.流程分析图 注册 登陆 下载 三.案例实现效果 首页 注册 登陆 下载网主页 壁纸下载 书籍下载 影视下载 ...
- 关于对工具扫描的检测原理及绕过 (上)
数据包特征(请求体) 请求方式 我们熟知的大部分请求方式以GET.POST为主,但是在目录扫描时为了加快扫描的速度,也会用到HEAD方法.简单理解head方法就是主要为了探测url链接存在且能正常访问 ...
- Amazon S3简介
目录 文献参考: 存储桶 对象 键 区域 S3数据一致性模型 存储类别 存储桶策略 AWS Identity and Access Management 操作 创建请求 AWS 账户访问密钥 IAM ...
- 【Wikipedia爬虫工具包的使用】请求超时、代理错误、SSLError
项目场景: https://github.com/goldsmith/Wikipedia 使用该工具包爬取维基百科的搜索内容 问题描述 TimeoutError:urllib3.exceptions. ...
- oracle utl_http.request,通过ORACLE的UTL_HTTP工具包发送包含POST参数的请求
直接上程序,程序可以直接运行,只要修改IP地址和post参数就可以: DECLARE req utl_http.req; resp utl_http.resp; l_clob CLOB; l_buf_ ...
最新文章
- MySQL 5.6中如何定位DDL被阻塞的问题
- 【Redfin SDE intern】跪经
- 力扣(LeetCode) 35. 搜索插入位置
- CGImageRef 图片压缩 裁减
- java testwhileidle_DBCP踩坑(二):连接池检查testWhileIdle失效
- linux内核cpu负载计算,CPU 负载 — The Linux Kernel documentation
- css3怎么排除第一个,css怎么排除第一个子元素
- ajax数据保存及解析
- 服务器常用的状态码及其对应的含义
- setpairint,int 的用法
- 苹果应用审核走进中国!
- python 数据库模块_MySQl 数据库 之 python模块 pymysql 简单介绍
- drools规则引擎使用文档
- MySQL源码调试入门
- MySQL中文乱码解决方案
- 01. PM之项目启动Kickoff -- 可不只是一起吃个饭
- 用linux安装包装ftp,Linux 安装vsftpd和ftp客户端
- codevs1515 瞎搞+Lucas
- 不卷了!技术团队成员集体辞职
- 大搜车与永达二手车合作,大型汽车经销商加快数字化进程