none
Faço pág expirar pelo webconfig (deveria ser em 30 min.) geralmente expira nesse tempo, mas outras vezes em relação a um cronometro jquery da pág, expira antes, com 15 min. por ex. = ??? RRS feed

  • Pergunta

  • Prezados, boa tarde!

    Fiz uma página para que ele expire a cada 30 minutos caso fique ociosa com o seguinte código no webconfig:

        <sessionState cookieless="UseCookies" mode="InProc" regenerateExpiredSessionId="true" timeout="30" useHostingIdentity="true" />

    Pelo menos, na época que fiz, pelas minhas pesquisas, é isso que esse código faz, a pág. expirar em cada de ociosidade durante este tempo.E para o usuário ter ciência de quanto tempo passou, fiz um cronometro jquery através desta fonte:

    http://social.msdn.microsoft.com/Forums/pt-BR/801e32e1-00ed-48a2-9725-ca43a9b18a5d/componente-para-marcar-tempo#ecbd62d1-8197-4a14-b06b-1da28f81e182

    Setei o cronometro também com 30 minutos, e dou um refresh nele a cada link, butao clicado, ou seja, a cada post back é resetado o cronometro, pois interrompe a ociosidade, e em tese este cronometro estaria sempre de acordo com o tempo de timeout constante do webconfig.

    Porém recebi já algum retorno de alguns usuários que dizem que a página está expirando mesmo com o relógio estando em 15 minutos.

    Então queria a ajuda de vocês quanto a isso.

    1ö - conferir se esse codigo do webconfig realmente está fazendo o que eu acho ou achava que fazia. (caso ele não faça qual outra melhor forma de fazer isso, de forma que esteja sempre integrado com o cronometro, porque neste caso, na verdade não existe uma integração real do cronometro com o timeout do webconfig, seriam apenas regras iguais, ou seja, contagem de tempos de 30 minutos - porém parece que o timeout do webconfig está funcionando diferente de como eu esperava)

    2ö - caso esse codigo do webconfig realmente esteja fazendo o que eu espero, talvez ele não resete o timeout sempre que eu achei que fosse resetar;

    quando se clica num link de um <asp:Menu por exemplo eu faço meu cronometro resetar, mas pode que o timeout do webconfig não resete.. essa seria uma das explicações que imaginei para esse conflito.

    mas como conferir e/ou debugar em que tempo está a contagem deste timeout do webconfig? (tem como eu ir conferindo essa contagem real do webconfig, porque de certa forma a contagem do cronometro jquery não é a real e vinculada ao webconfig).

    Se tiver como eu pegar essa informação e jogar numa variável para que eu possa ir verificando em que tempo está esse timeout, seria uma forma de debugar.

    Um segundo passo, mas avançado, que gostaria de fazer, é ter uma real vinculação deste timeout do webconfig com esse meu cronometro, ou seja, que os dois conversem, porque até então eu só setei que este cronometro jquery iria começar a contagem regressiva em 30 min. porque eu sabia que eu tinha setado o timeout no webconfig em 30 min também.

    Mas agora pensei que talvez uma vinculação real, que mandasse a informação desse timeout da sessão do webconfig, direto pro cronometro jquery, seria o ideal talvez (porém acho que isso talvez seja muito complicado,, se eu tivesse como ter certeza que o timeout está dando refresh como eu esperava, talvez já resolva).

    Desde já obrigado.

    sexta-feira, 27 de setembro de 2013 20:04

Respostas

  • Ola, boa noite.

    Já tive alguns problemas com SessionTimeout também, porem acabei tratando sempre eles com algumas configurações extras no IIS também, pois somente via web.config nunca funcionou perfeitamente. Fiz algumas pesquisas para descobrir se teria como obter o estado de uma sessão em runtime e acompanhar seu tempo de vida, mas não consegui nada.

    Um script que encontrei http://www.codeproject.com/Articles/227382/Alert-Session-Time-out-in-ASP-Net que talvez possa te ajudar a criar um modo de tratamento mais eficaz pode ser esse do link.

    ;) até mais.


    Altieri Pereira http://altieripereira.blogspot.com/

    • Marcado como Resposta Giovani Cr segunda-feira, 7 de outubro de 2013 17:50
    domingo, 29 de setembro de 2013 07:08