«

»

Sep 12

Print this Post

Como saber quando a sessão de um usuário termina?

Voce pode executar código quando uma sessão de usuário termina usando o métodoonSessionEnd do arquivo Application.cfc. O exemplo a seguir registrará num arquivo log:


<cffunction name="onSessionEnd" returnType="void" output="false">
     <cfargument name="sessionScope" type="struct" required="true">
     <cfargument name="appScope" type="struct" required="false">
     <cflog file="#arguments.appScope.applicationName#" text="Session ended.">
</cffunction>

Note-se que dentro do método onSessionEnd você não pode se dirigir aos escopos de sessão ou aplicação diretamente. Em vez disso você faz referência a eles através dos argumentos passados automaticamente para o método. Você pode não pode sair com alguma coisa a partir deste método, pois, obviamente, nenhum usuário está em volta para ver a saída.

Por último – se você usar variáveis de sessão J2EE, você vai notar que a sessão termina quando fechar o navegador. Na verdade, a sessão está terminando. Em vez disso, quando você relançar seu navegador, uma nova sessão será criada. Portanto, você não pode fechar o browser como um meio para testar este código. Em vez disso, você deve esperar o valor total de tempo que leva para as sessões expirarem em sua aplicação. (Se não especificado, ele será o padrão para um valor definido no Administrador do ColdFusion – normalmente 20 minutos.)

by Raymond Camden

Permanent link to this article: http://ensina.me/coldfusion/como-saber-quando-a-sessao-de-um-usuario-termina/

Leave a Reply