博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OkHttpUtils中出现的坑(Error只打印code错误码)
阅读量:1824 次
发布时间:2019-04-25

本文共 1434 字,大约阅读时间需要 4 分钟。

今天跟PHP后台接口调试,发现远没有之前的那么顺利

用的鸿洋封装好的OkHttpUtils框架,发现在OkHttpUtils里面只有打印返回错误码,并没有打印返回错误信息,

而后台那边是直接把错误信息在onError中进行返回了,当然也返回了错误码

这里我们需要重新定义一个StringCallback 来把错误信息也给打印出来

之前的StringCallback 可能是这样的:

OkHttpUtils.get()                .url(url)                .build()                .execute(new StringCallback() {                    @Override                    public void onError(Call call, Exception e, int id) {                        Log.i(TAG, e.getMessage());                    }                    @Override                    public void onResponse(String response, int id) {                        Log.i(TAG, response);                    }                });
解决方法

这时候我们重新定义一个新的MyStringCallback

public abstract class MyStringCallback extends Callback
{
@Override public boolean validateReponse(Response response, int id) { return true; } @Override public String parseNetworkResponse(Response response, int id) throws Exception { if(response.code()>=200 && response.code()<300){ return response.body().string(); }else{ throw new Exception("code is:"+response.code()+"\n"+response.body().string()); } }}
使用方式

当你用StringCallback的时候,把StringCallback改成MyStringCallback就可以用了,更多的方式,你可以查看源码,或者是这个:

————————————— 下面是广告 ————————————————

个人微信:hll643435675(备注:博客)

更多资源请访问:

欢迎光临我的小网站:

欢迎光临这个妹子的SEO优化网站:

陆续优化中,后续会开发更多更好玩的有趣的小工具

————————————— 上面是广告 ————————————————

转载地址:http://suxkf.baihongyu.com/

你可能感兴趣的文章
Flink关于加速器的使用
查看>>
Flink广播的使用
查看>>
Flink分布式缓存
查看>>
如何选择合适的数据类型
查看>>
学习MySQL(一)
查看>>
学习MySQL(二)数据库各项约束
查看>>
IntelliJ IDEA 插件 阿里巴巴Java开发手册(Alibaba Java Coding Guidelines)
查看>>
认识Java
查看>>
java中非静态、静态方法的调用、方法中调用方法
查看>>
Java中的访问权限修饰符、各种变量、static、final等关键字,一直混淆的整理(未完)
查看>>
宋红康的快捷键包描述(idea导入类似eclipse的)keymap-shkstart.jar
查看>>
IDEA默认的快捷键整理!!
查看>>
超宽带雷达P440?雷达的快时间慢时间是什么意思?
查看>>
教育授权certificate used to sign the license
查看>>
从内存解释:方法传参(基本数据类型、引用数据类型(对象、数组、String类型)),原值是否改变?
查看>>
java中数组为空和数组长度为0的区别
查看>>
SecureCRT连接不上虚拟机
查看>>
为什么在创建线程时,更推荐用实现Runnable接口的方法?而不是继承Thread类的方法?
查看>>
从100万个数中找出最大的前100个数-最小堆、分块
查看>>
并发下的ArrayList、HashMap
查看>>