现在,我使用Retrofit从服务器的惠誉数据。问题是,我需要每1小时调用一次API来获得新令牌,到目前为止,im运行后台服务以在1小时到期之前获得新令牌,如果API响应因令牌过期而失败,则调用API令牌,而不是再次调用该方法。
我的问题是:在更新中是否存在处理令牌过期的内置方式?或者任何类似的东西。
发布于 2018-10-16 15:04:09
修改是为了帮助您处理所需的请求。它不处理令牌过期。这意味着,你需要自己处理这件事。例如,在请求错误处理中,可以检查401未经授权的错误(这通常是服务器在令牌过期时发送的错误)。当发生这种情况时,请保存失败的请求,并为新令牌发送另一个请求。当新请求成功完成后,您将刷新令牌,并且可以使用新获取的令牌重试初始失败请求。
发布于 2018-10-16 15:13:02
我认为您可以使用OkHttp拦截器来捕获任何请求未经授权的401,而不是刷新您的令牌并重试请求。
https://futurestud.io/tutorials/retrofit-2-catch-server-errors-globally-with-response-interceptor
全局错误处理程序: OkHttp拦截器
https://stackoverflow.com/questions/52837981
复制相似问题