关于GsonConvertFactory等参数的疑问
FlogFly opened this issue · 6 comments
public RetrofitClient() {
this.initDefaultOkHttpClient();
this.mRetrofitBuilder = (new Builder()).addCallAdapterFactory(RxJava2CallAdapterFactory.create()).addConverterFactory(ScalarsConverterFactory.create()).addConverterFactory(GsonConverterFactory.create(GsonAdapter.buildGson()));
}
我看你的addCallAdapterFactory和addConverterFactory都是写死的,处于什么原因不允许自己配置吗?如果有些需求需要统一对返回结果做处理,本来改个factory就行。
目前单个请求提供了设置factory的方法,全局的暂时没有(因为大部分请求结果都是在回调中处理原始数据的,变更的需求量不大),既然有需求后期会不断完善,另外如果方便麻烦提供一下你需要对数据转变的具体操作,谢谢!
目前单个请求提供了设置factory的方法,全局的暂时没有(因为大部分请求结果都是在回调中处理原始数据的,变更的需求量不大),既然有需求后期会不断完善,另外如果方便麻烦提供一下你需要对数据转变的具体操作,谢谢!
比如现在要增加相关的token自动刷新及自动重新发起请求,底层做封装处理这块,网上一般操作都是配合retrywhen参数,然后更改自定义的GsonConverterFactory,修改里面的GsonResponseBodyConvert。 或者说lygttpod你们的项目一般都是怎么操作这块的逻辑的??
自定重发是对okhttp配置的,至于token自动刷新不知道你们那边是什么逻辑,我之前遇到过的是每次请求会带token到服务器进行验证,过期的话会重新登陆然后会刷新token,不知道你说的自动刷新是 要怎么操作的
比如你在拉取列表,这时候token过期,理想状态,肯定是app后台同时帮忙去帮用户登录获取新token,同时再执行一边刚在的访问接口,给用户的体验就是我这个列表刷新的慢了一点而已,而不会说要重新跳到登录界面,重新登录等,或者拿到了新token,要重新点击去刷新。。可以参考这个文章:https://blog.csdn.net/jdsjlzx/article/details/52442113
这个问题之前确实没碰到过,我会抽时间研究一下这方面相关的知识