怎么查找 Retrofit 请求失败的原因

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么查找 Retrofit 请求失败的原因相关的知识,希望对你有一定的参考价值。

参考技术A 一.首先定义带泛型返结RetrofitAPI原结映射种形式:classResultStringResultMessage;intResultCode;TData;二.处理错误@朱诗雄前辈差放作静态放RetroUtilApiException自定义异放入错误码错误信息(错误码止):staticObservableflatResult(Resultresult)returnObservable.create(subscriber->switch(result.ResultCode)caseConstants.SUCCESS_CODE:subscriber.onNext(result.Data);break;caseConstants.ERROR_CODE:subscriber.onError(newApiException(result.ResultCode,result.ResultMessage);break;default://subscriber.onCompleted(););三.API包装类于述Result格式返结统调用flatMap(RetroUtil::flatResult)API每API返结Observable形式并且errorHandler统处理错误//接口Observable>getUserInfo();//包装ObservablegetUserInfo()returnmApi.getUserInfo.flatMap(RetroUtil::flatResult);//调用apiWrapper.getUserInfo().subscrible(user->//处理逻辑,error->//处理错误逻辑异封装通统处理//提供默认Action一参数弹//throwablemessage打印志等)

flutter 使用retrofit

参考技术A 问题:
1,执行flutter pub run build_runner build后没有生成.g.dart文件
2,执行flutter pub run build_runner build失败

原因
1,不生成.g.dart文件可能没有写@RestApi()

2,

3,可能是build_runner的版本问题

最后修改如下

问题

原因

修改
在资源中添加秘钥文件

.yaml文件中添加

问题:
error DioError [DioErrorType.DEFAULT]: FormatException: Unexpected character (at character 2)

原因:

解决:

以上是关于怎么查找 Retrofit 请求失败的原因的主要内容,如果未能解决你的问题,请参考以下文章

Android开发之Retrofit+RxJava的使用

Retrofit初识

Android Retrofit+RxJava 优雅的处理服务器返回异常错误

Android Retrofit Multipart图片上传至webapi,客户端发送请求,服务端却收到两个请求的原因

OkHTTP、Retrofit 中文乱码解决方法

okhttp文件上传失败,居然是Android Studio背锅?