请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

网络库如何统一处理401Token失效问题

通常请求401Token失效会要求跳转到登陆页面重新登录,无论是在okhttp添加拦截还是在CommonJsonCallback的onFailure处理,都是修改了工具类网络库lib_network,在不与业务模块耦合的情况下如何统一处理这种情况

正在回答 回答被采纳积分+3

1回答

qndroid 2020-03-09 13:06:33

这个没有办法哈,思路就是okhttp添加拦截还是在CommonJsonCallback的onFailure处理,你这个逻辑是比较通用的,所以可以看作是基顾功能加到库里,然后对外提供回调,业务可以特殊处理,自己也可以提供一个通用的默认实现,总之是肯定会改到库的。

0 回复 有任何疑惑可以回复我~
  • 提问者 想水的小猪 #1
    我想到的几个实现方式,不知道哪种合理一些
    1、对外提供回调,但是外部在每一个实现回调的地方都需要处理
    2、lib_base依赖lib_network,在lib_base中处理跳转
    3、发送EventBus到BaseActivity
    4、直接在网络库中实现登录跳转(通过自定义登录页的scheme或者arouter)
    回复 有任何疑惑可以回复我~ 2020-03-09 16:10:04
  • qndroid 回复 提问者 想水的小猪 #2
    第一种方式加默认实现,我觉得最好,其它方式还得对其它库进行依赖,不太好。
    回复 有任何疑惑可以回复我~ 2020-03-09 16:23:19
  • 提问者 想水的小猪 回复 qndroid #3
    哈哈好的
    回复 有任何疑惑可以回复我~ 2020-03-09 17:11:43
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信