【发布时间】:2018-05-01 13:18:33
【问题描述】:
我有一个登录端点,我通过它接收一个 authToken 和一个 refreshToken。第一个将在一小时后到期,所以我应该使用第二个来刷新它并继续应用程序流程。
现在我的应用程序到处都是改造调用,我可能会在任何给定时刻获得401,所以我怎样才能做到每次我收到401 时都会发出刷新令牌,然后重试原来的请求?
这是我的刷新签名:
@POST("/auth/actions/refresh")
fun refreshToken(@Body tokenRefresh: TokenRefresh): Single<LoginResponse>
我曾考虑使用 withAuth() 方法创建一个基础存储库类,该方法采用任何 Observable/Single/Flowable,然后应用此逻辑,但我找不到实现它的方法。
看到了一堆实现,但没有一个符合我的需求……谁能把我推向正确的方向?
This is the closest我找到了,但是平面映射似乎有一些错误
【问题讨论】: