OkHttpUtils中出现的坑(Error只打印code错误码)
发布日期:2021-06-28 19:08:31 浏览次数:3 分类:技术文章

本文共 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优化网站:

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

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

转载地址:https://blog.csdn.net/xudailong_blog/article/details/82503298 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:比TakePhoto好点的Android图片选择器
下一篇:Preview is unavailable until a successful build

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月12日 19时48分53秒