O que é "time out" ?
Time out é o tempo após o qual a sessão na qual o usuário está, dentro de uma aplicação do servidor Web (IIS, Apache, Quick'n'easy, Chitami) expira, ou seja, ela cai e perde referências internas que sustentam a digitação ou operação do usuário.
Exemplo:
Você está preenchendo um formulário com informações para a a compra de um produto e demora demais. Quando vai olhar de novo para a tela do computador, ele exibe uma mensagem em inglês, ou informa de maneira clara que a página "expirou" e portanto você deve fazer tudo de novo.
Por que é preciso fazer isto ?
Se este controle de tempo não fosse feito, o servidor não suportaria tantas pessoas abrindo telas na Internet e deixando as mesmas abertas sem estar fazendo nada. Este tempo orça entre 10 e 20 minutos. Se uma pessoa não utiliza uma tela (não digita nada ou não mexe com o mouse) por 10 minutos, é porque a tela não lhe interessa mais. No caso do preenchimento de formulários, provavelmente a pessoa desistiu da compra ou de um cadastramento.
Controle pelo ASP
O controle pelo ASP é feito por intermédio das variáveis de Sessão (Session). O local predileto e adequado para iniciar a colocação de variáveis de sessão é a script chamada pela tela de login do sistema ou aplicação. Esta script recebe os dados do formulário de login (usuário e senha) e as trata:
<%
vUsuario = Request("Usuario")
vSenha = Request("Senha")
Session("Usuario") = vUsuario
%>
Os nomes dentro dos parênteses são os correspondentes "names" das tags de INPUT HTML da tela de login:
<FORM method="post" action="script de destino onde estará o código ASP">
Usuário:<INPUT type="text" name="Usuario">
Senha:<INPUT type="text" name="Senha">
</FORM>
A partir do processamento da script ASP, uma variável interna, invisível para todos os outros usuários que estiverem utilizando este sistema, armazenará o nome do usuário, e estará disponível para TODAS as páginas e scripts chamadas por esta script.
Como testar se ocorreu o time out ?
No início das scripts chamadas por esta script e pelas demais, coloque o trecho:
<%
if Session("User") = "" then
Response.redirect "nome da script ou página HTML que corresponde à tela de login"
end if
%>
Desta forma, toda vez que uma script for chamada, vai ser feita a conferência da existência desta variável de Sessão (Session("Usuario")). Se ela estiver vazia, é porque perdeu o valor. E se perdeu o valor, é porque a sessão do usuário expirou.
Nenhum comentário:
Postar um comentário