O fluxo de autenticação é o processo de confirmação da identidade de um usuário e gerenciamento de seu acesso a determinadas partes de um aplicativo. Quando você trabalha com um aplicativo da web (como um site de mídia social), isso envolve verificar se o usuário é quem diz ser (login) e, em seguida, conceder-lhe acesso a determinados recursos.
No React, quando você deseja lidar com a autenticação do usuário, geralmente interage com um servidor back-end que cuida do trabalho pesado. Veja como normalmente funciona:
Após um login bem-sucedido, o servidor envia de volta dois tokens importantes:
Token de acesso:
Token de atualização:
Depois que o usuário faz login e recebe esses tokens, o aplicativo precisa armazená-los em algum lugar do dispositivo do usuário. É aqui que entra o localStorage:
Cada vez que o usuário faz algo que requer interação com o servidor (como postar um status ou visualizar suas mensagens), o aplicativo envia uma solicitação ao servidor com o token de acesso anexado no cabeçalho de autorização. Isso informa ao servidor que o usuário está logado e tem permissão para executar a ação.
Expiração do token de acesso: Se o servidor responder com um erro 401, significa que o token de acesso expirou. O aplicativo usará então o token de atualização para solicitar um novo token de acesso.
Expiração do token de atualização: Se o token de atualização também expirou (o que pode acontecer depois de um longo tempo), o servidor responderá novamente com um erro 401. Neste ponto, o aplicativo redirecionará o usuário para a página de login, solicitando que ele faça login novamente para obter novos tokens.
Depois que o aplicativo obtiver um novo token de acesso usando o token de atualização, ele reenviará a solicitação original que falhou devido ao token expirado. Dessa forma, o usuário não sofre nenhuma interrupção.
Esse fluxo garante que o usuário possa permanecer conectado e usar o aplicativo com segurança, sem precisar inserir novamente suas credenciais o tempo todo.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3