Estou com problemas no tratamento de sessões. Possuo uma aplicação Web, que ao usuário fazer login, gravo informações na sessão, estas informações devem ser visíveis somente naquele browser aberto.
Acontece que, se o usuário abrir outro browser e logar novamente, quero permitir que ele faça isto, mas iniciando uma nova sessão, a sessão antiga deve continuar, as duas funcionarão independentemente.
O que acontece é que quando abro o segundo browser através de um link para minha aplicação na área de trabalho, ele mantém a mesma sessão.
Se abrir pelo link do Internet Explorer, abre outra sessão corretamente.
Teste em máquinas separadas ou então em browsers diferentes (IE e Firefox).
Mauricio_Linhares
Com o firefox isso não é possível, a não ser que você configure vários profiles sendo executados ao mesmo tempo. Quando você abre uma instância do Firefox, ele sempre “reutiliza” os cookies da outra instância que estava sendo executada.
No IE, cada janela aberta pode ter uma sessão diferente, contanto que elas sejam abertas em separado e não através de cliques em páginas.
Acho que do jeito que você quer não tem jeito não. O usuário tem que abrir uma nova janela do IE e digitar o caminho da URL lá em cima pra poder ter uma nova sessão.
lgr
é!abrindo uma nova janela de uma janela esta segunda vai herdar.Não tem jeito.Eu pelo menos nunca vi.
//Será que não tem um jeito de “matar” a sessão e depois criar novamente???//
se alguem souber vai contribuir bastante hein!
[]
A
andreban
Talvez você possa forçar o uso de URL Rewriting ao invés de deixar usar Cookies…
F
fguimaraes
Os testes que eu havia feito, ocorreram conforme o Maurício disse.
Será que existe outra forma de quardar os dados específicos daquela janela do browser que está aberta, sem utilizar variáveis de sessão?
Existe algum identificador da janela, além do ID da sessão?
Tem como alterar o ID da sessão?
Obrigado a todos pelas respostas.
Aguardo sugestões.
Obrigado.
leonardotrp
Também estou na “cola” desta possível (ou impossível?) solução. Precisei implementar uma solução de “lock pessimista”, mas não funciona quando é permitido ao usuário utilizar “CTRL+N” OU “Nova janela” OU “Nova guia”.
Se realmente não existe como impedir mais de uma janela da mesma sessão, existe alguma razão filosófica para isso?
leonardotrp
jopss
Olá… tbm gostaria de saber se existe solução msm pra isso…
Pelo menos como fazer o firefox utilizar sessoes diferentes quando aberto por outro browser, nao por abas.
jopss
L
Leonardo3001
Essa é uma realidade: o cookie perdurará por várias janelas abertas com Ctrl - T. Conviva com isso.
O problema é que as pessoas constroem aplicações web assumindo que a ordem das páginas devem ser exatamente aquelas que os arquitetos pensaram. Só que não dá, pois os usuários apertam o botão voltar, guardam no favoritos, criam atalhos…
Não brigem com o uso comum. E não pensem em soluções gambiarrentas para “corrigir” o mundo web. Busquem usar o mínimo de sessão, aprendam redirect-after-post e, em casos de dados sensíveis, aprendam a setar os headers para não cachear e não armazenar páginas (assim, aparece uma página nova mesmo quando o usuário volta).