Asp.NET - Tempo de Sessão Restante

615 views
Skip to first unread message

Ricardo Noronha

unread,
Nov 20, 2012, 1:42:43 PM11/20/12
to Lista DOTNET BR
Pessoal como faço para uma vez definido o TimeOut de  Sessão do Usuário, eu saber quanto tempo falta para a Sessão do Mesmo Expirar?

Thiago C. Santos

unread,
Nov 20, 2012, 2:03:49 PM11/20/12
to dotn...@googlegroups.com
Em que momento você espera saber isso?

Att,

Thiago C. Santos



2012/11/20 Ricardo Noronha <ricar...@yahoo.com.br>
Pessoal como faço para uma vez definido o TimeOut de  Sessão do Usuário, eu saber quanto tempo falta para a Sessão do Mesmo Expirar?

--
==============================
Comunidade de desenvolvedores Dot Net no Brasil
 
WebSite: www.dotnetbr.com
 
E-mail do Grupo: dotn...@googlegroups.com
==============================

Jonathas Morais

unread,
Nov 21, 2012, 7:11:25 AM11/21/12
to dotn...@googlegroups.com
Se você estiver utilizando Razor e quiser pegar isso na view, pode fazer com jQuery mesmo.
Algo como: 

<html>
<head>
/// Rerefencie jQuery e Css aqui...
</head>
<body>
   ///Seu html
   <section>
        <label>
            Sua sessão expira em <a id="TempoDeExpiracao"></a>m
        </label>
    </section>
.
.
.... ///restante do seu html
<script type="text/javascript">
var tempoParaExpirar = "@if (Session["Usuario"] != null){@MvcHtmlString.Create(((SeuNamespace.TokenModel)Session["Usuario"]).TempoParaExpirar)}";
$(document).ready(function () {
    $("#TempoDeExpiracao").countDownTimmer(expirationTime);
});

countDownTimmer = function (time) {
    var timmer = this;
    $(this).html(time);
    $(this).attr('timmer-countdown', time);
    setInterval(function () { timmerCountdown(timmer) }, 1000);
};

</script>
</body>
</html>

Ricardo Noronha

unread,
Nov 21, 2012, 8:20:11 AM11/21/12
to Lista DOTNET BR

 Em qualquer ida ao servidor, se for possível fazer via js também seria legal.
 
Quero informar porque na aplicação que estamos desenvolvendo tem alguns cadastros longos, porém por segurança não queremos aumentar demais o tempo de sessão.

Date: Tue, 20 Nov 2012 17:03:49 -0200
Subject: Re: [.Net - BR] Asp.NET - Tempo de Sessão Restante
From: thiago.c...@gmail.com
To: dotn...@googlegroups.com


Em que momento você espera saber isso?

Att,

Thiago C. Santos



2012/11/20 Ricardo Noronha <ricar...@yahoo.com.br>
Pessoal como faço para uma vez definido o TimeOut de  Sessão do Usuário, eu saber quanto tempo falta para a Sessão do Mesmo Expirar?

--
==============================
Comunidade de desenvolvedores Dot Net no Brasil
 

 
E-mail do Grupo: dotn...@googlegroups.com
==============================

Bruno Fernandes

unread,
Nov 21, 2012, 8:34:38 AM11/21/12
to dotn...@googlegroups.com
[OFF]
Sei que não é exatamente o que você quer, mas talvez possa resolver o seu problema...

E se você colocasse nesses seus cadastros longos você um botão no qual obrigasse o usuário clicá-lo para passar para a "próxima tela" (tipo as telas de wizard). Nesse caso, ao clicar no botão, você enviaria uma requisição* para o servidor para reiniciar a contagem da sessão.

* -> essa requisição pode ser para, por exemplo, retornar a hora do servidor OU nem precisa fazer nada efetivamente. seria só para reiniciar a contagem.
[/OFF]


Att. 
Bruno Fernandes


2012/11/21 Ricardo Noronha <ricar...@yahoo.com.br>

Thiago C. Santos

unread,
Nov 21, 2012, 8:51:37 AM11/21/12
to dotn...@googlegroups.com

"Em qualquer ida ao servidor"

Ricardo, se o cliente faz um request no servior (uma ida ao servidor) o seu tempo restante da sessão já é atualizado para o timeout definido.

Mas acho que talvez você esteja indo pelo caminho errado, a solução que eu escolheria para o seu problema é heartbeat, se você usar este pattern enquanto o usuário estiver com a página aberta a sua sessão não irá expirar por que de tempo em tempo via ajax o servidor é informado que o usuário esta com a pagina aberta, assim fica transparente para o usuário.

 


Att,

Thiago C. Santos



On Wed, Nov 21, 2012 at 11:20 AM, Ricardo Noronha <ricar...@yahoo.com.br> wrote:
lquer ida ao servidor, se f

Thiago C. Santos

unread,
Nov 21, 2012, 9:01:42 AM11/21/12
to dotn...@googlegroups.com

Não que seja errado, mas assim acho que ficaria melhor.



Att,

Thiago C. Santos



2012/11/21 Thiago C. Santos <thiago.c...@gmail.com>
Reply all
Reply to author
Forward
0 new messages