使用Retrofit

时间:2017-06-01 09:35:05

标签: android http retrofit retrofit2

我正在使用Android应用中的http调用进行改造。如果会话过期,任何对服务器的调用都可以随时返回401代码。所以我需要一个通用机制来检测任何调用中的代码,对服务器执行新的登录请求,当我有响应时,重试原始请求。我想在一个方法中集中登录,以避免在我的所有调用中重新尝试重试登录。

我想我应该用拦截器做到这一点。我的想法是:

创建我对服务器的所有调用使用的拦截器。在该拦截器中,查找响应代码。如果响应代码为401,请执行登录请求,然后再返回原始请求。当进程完成时,拦截器必须返回最后一个请求(原始请求)的响应。

问题是我不知道如何在拦截器方法拦截(Interceptor.Chain链)中创建新请求。我找不到任何这样做的例子。

0 个答案:

没有答案