16. oktober 2002 - 08:47Der er
13 kommentarer og 1 løsning
Lukke session når side forlades- How?
Jeg er ved at pakke min applikation ind bag en loginside, men jeg har det problem at jeg ikke kan lukke min session når siden forlades. Jeg ved at jeg skal anvende Session.Abandon(), men har hidtil ikke kunnet finde en måde at definere således at det kun sker når siden lukkes.... Det skal lige siges at alle mine side vise i en frame hovedside...
Det kan ikke lade sig gøre for dig at finde ud af hvornår en given bruger forlader en given side. Det du kan gøre, er at lave en time-out på din session og i øvrigt en logout-knap.
Derudover skal du huske på, at Session-ID'en som standard gemmes som en cookie, der expirer ligesåsnart browseren bliver lukket. Så du behøver i princippet slet ikke kode :)
Det er den event som browseren invoker, når du browser væk fra en side eller manuelt lukker vinduet siden befinder sig i. Dvs. at når brugeren forlader din side, hvor du har implementeret en onunload eventhandler med ovenstående jskode ("window.open('logout.aspx')") vil browseren åbne (window.open) et vindue med logout.aspx i. Logout.aspx kalder så serverside "Session.Abandon()", hvorefter den udskriver javascriptkode til at lukke sit vindue med.
Vil det sige at jeg kan i den logout.aspx side som jeg så skal lave, kan placere Session.Abandon() i Page_Load, eller hvordan skal det helt præcist implementeres? Jeg ville være meget taknemmelig for eksempler. (jeg koder i C#- hvis I evt. skulle have eksempler).
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.