Usuário com melhor resposta
Info Gerais(Classico problema em aplicação de Chat)

Pergunta
-
Boa Tarde pessoal, blz?
Gostaria de saber se alguem poderia me ajudar com uma questão clássica de Chats, saber quando o usuário deixou a aplicação, ou pq a Sessão expirou(Session_End), pq ele fechou a guia ou fechou o browser. Já tentei algumas soluções encontradas pela Net, mais não obtive muito sucesso. No evento "onunload" de java script não ____, pq é dispirado toda vez que existe um Post na página. Estou sem saber como conduzir esse problema. Alguém poderia me ajudar?
Grato.
No aguardo.
Abraço a todos.
Respostas
-
Chará,
Quanto ao evento, o load da página será executado (apenas a sessão não existe).
Aqui tem como verificar se a sessão expirou (com certeza):
http://justgeeks.blogspot.com/2008/07/aspnet-session-timeouts.html
Seria:
Context.Session != null
AND Context.Session.IsNewSession == true
AND Page.Request.Headers["Cookie"] != null
AND Page.Request.Header["Cookie"].indexOf("ASP.NET_SessionId") >= 0Aqui tem como verificar com ajax:
http://www.imaginativeuniversal.com/blog/post/2007/10/19/Session-Expired-Monitor-with-ASPNET-AJAX.aspx
Att,
Ricardo
- Marcado como Resposta Ricardo OnedaModerator domingo, 28 de novembro de 2010 18:00
-
Ricardo,
veja como trabalhar com o evento "onunload", inclusive com uma opção para ele não ser disparado quando ocorre um POST:
http://www.aspneti.com/Descobrindo+quando+o+usuario+sai+de+uma+aplicacao+ASP.NET+Parte+2+337,0.aspx
http://www.aspneti.com/Descobrindo+quando+o+usuario+sai+de+uma+aplicacao+ASP.NET+Parte+3+340,0.aspx
Ricardo Oneda- Marcado como Resposta Ricardo OnedaModerator domingo, 28 de novembro de 2010 18:00
Todas as Respostas
-
Chará,
Quanto ao evento, o load da página será executado (apenas a sessão não existe).
Aqui tem como verificar se a sessão expirou (com certeza):
http://justgeeks.blogspot.com/2008/07/aspnet-session-timeouts.html
Seria:
Context.Session != null
AND Context.Session.IsNewSession == true
AND Page.Request.Headers["Cookie"] != null
AND Page.Request.Header["Cookie"].indexOf("ASP.NET_SessionId") >= 0Aqui tem como verificar com ajax:
http://www.imaginativeuniversal.com/blog/post/2007/10/19/Session-Expired-Monitor-with-ASPNET-AJAX.aspx
Att,
Ricardo
- Marcado como Resposta Ricardo OnedaModerator domingo, 28 de novembro de 2010 18:00
-
-
-
Ricardo,
veja como trabalhar com o evento "onunload", inclusive com uma opção para ele não ser disparado quando ocorre um POST:
http://www.aspneti.com/Descobrindo+quando+o+usuario+sai+de+uma+aplicacao+ASP.NET+Parte+2+337,0.aspx
http://www.aspneti.com/Descobrindo+quando+o+usuario+sai+de+uma+aplicacao+ASP.NET+Parte+3+340,0.aspx
Ricardo Oneda- Marcado como Resposta Ricardo OnedaModerator domingo, 28 de novembro de 2010 18:00