Como os sites geralmente registram os usuários automaticamente quando a sessão expira?
Pergunta
Como os sites geralmente retomam os usuários e os enviam para a tela de login automaticamente quando a sessão de um usuário expirar? Isso é feito através do Ajax ou dos manipuladores de assíncrias? Você pode me dar uma explicação.
Solução
Use um cookie e uma sessão.
- O cookie deve ser definido quando uma sessão for iniciada.
- Se o biscoito estiver presente, mas a sessão se foi, redirecione para o
tela de login. - Se não houver sessão e nenhum cookie não faça nada
(Perdoe -me se você não pode fazer isso porque nunca usei asp e baseando minha resposta no meu conhecimento do PHP)
Outras dicas
Os bancos e outros usam um tempo limite do lado do cliente via JavaScript, ou algo semelhante. Realmente, porém, o servidor lida com a sessão real; portanto, se você desativou a lógica do lado do cliente, ele agiria como se você estivesse tentando fazer transações durante o registro.
Normalmente, você define um carimbo de data e hora de expiração no seu cookie de ID da sessão. Quando o cookie não é enviado, o cliente é logado (nenhum ID de sessão em determinado).
Este método é frequentemente combinado com JavaScript e outro Token de timestamp. Quando os temporizadores começam a ser executados, é enviada uma notificação que permite ao usuário "atualizar" a sessão deles ... essencialmente, fazendo uma solicitação antes que o registro de data e hora da sessão expire.
A solicitação de "atualização" pode ser qualquer coisa, mesmo algo tão simples quanto uma carga de imagem.
Se você estiver usando o tomcat, você pode usar seu embutido <security-constraint>
Mecanismo na sua definição Web.xml. Todo o tempo, a tela de login e os redirecionamentos de página são tratados pelo Tomcat com pouco esforço de sua parte que não seja definições.
Oh, eui ... deixa de lado.