El flujo de autenticación es el proceso de confirmar la identidad de un usuario y administrar su acceso a ciertas partes de una aplicación. Cuando trabajas con una aplicación web (como un sitio de redes sociales), esto implica verificar si el usuario es quien dice ser (iniciar sesión) y luego darle acceso a ciertas funciones.
En React, cuando quieres manejar la autenticación del usuario, generalmente interactúas con un servidor backend que maneja el trabajo pesado. Así es como funciona normalmente:
Después de iniciar sesión correctamente, el servidor devuelve dos tokens importantes:
Token de acceso:
Actualizar token:
Una vez que el usuario inicia sesión y recibe estos tokens, la aplicación debe almacenarlos en algún lugar del dispositivo del usuario. Aquí es donde entra en juego localStorage:
Cada vez que el usuario hace algo que requiere interacción con el servidor (como publicar un estado o ver sus mensajes), la aplicación envía una solicitud al servidor con el token de acceso adjunto en el encabezado de autorización. Esto le indica al servidor que el usuario ha iniciado sesión y tiene permiso para realizar la acción.
Caducidad del token de acceso: Si el servidor responde con un error 401, significa que el token de acceso ha caducado. Luego, la aplicación utilizará el token de actualización para solicitar un nuevo token de acceso.
Caducidad del token de actualización: Si el token de actualización también ha caducado (lo que puede suceder después de mucho tiempo), el servidor responderá nuevamente con un error 401. En este punto, la aplicación redirigirá al usuario a la página de inicio de sesión y le pedirá que inicie sesión nuevamente para obtener tokens nuevos.
Una vez que la aplicación obtenga un nuevo token de acceso usando el token de actualización, reenviará la solicitud original que falló debido al token vencido. De esta forma, el usuario no experimenta ninguna interrupción.
Este flujo garantiza que el usuario pueda permanecer conectado y usar la aplicación de forma segura sin tener que volver a ingresar sus credenciales todo el tiempo.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3