En este momento estoy usando Retrofit para ajustar los datos del servidor. el problema es que necesito llamar a la API para obtener un nuevo token cada 1 hora, y hasta ahora estoy ejecutando un servicio en segundo plano para obtener un nuevo token antes de que expire la 1 hora, y en caso de que la respuesta de la API falle debido a que el token expira, llamo al token de la API , que recordar el método de nuevo.

Mi pregunta: ¿hay una forma incorporada en la actualización para manejar la caducidad del token? o algo similar.

0
hossam scott 16 oct. 2018 a las 17:36

2 respuestas

La mejor respuesta

La modificación está hecha para ayudarlo a USTED a manejar las solicitudes que necesita. No maneja la caducidad del token. Esto significa que debe manejar eso usted mismo. Por ejemplo, en el manejo de errores de su solicitud, puede verificar el error 401 No autorizado (este suele ser el error que envía un servidor cuando caduca un token). Cuando esto ocurra, mantenga la solicitud fallida y envíe otra solicitud para un nuevo token. Cuando la nueva solicitud se complete con éxito, su token se actualizará y podrá volver a intentar la solicitud inicial fallida con el token recién obtenido.

0
G. Rann 16 oct. 2018 a las 15:04

Creo que puede usar un interceptor OkHttp para detectar 401 no autorizado para cualquier solicitud y luego actualizar su token y volver a intentar su solicitud.

https://futurestud.io/tutorials/retrofit-2-catch-server-errors-globally-with-response-interceptor

Controlador de errores global: OkHttp Interceptor

0
Ahmed.ess 16 oct. 2018 a las 15:13