2016-04-20 8 views
0

Während ich Java Web entwickeln, gibt es eine config in web.xml, wie folgend:[nodejs] Wie expressjs die abgelaufene Sitzung zerstören?

<session-config> 
    <session-timeout>15</session-timeout> 
</session-config> 

der die Sitzung bedeutet, dass in 15 Minuten zerstört werden, während die zugehörigen Client (Web-Browser), um die Website nicht zugegriffen haben. Ich kann sogar das Gerät HttpSessionListener verwenden, um den Haken für den Sitzungslebenszyklus zu haben.

Aber wenn ich entwickle Knoten Web über expressjs mit express-session und connect-memcachedmemcached. Ich habe nichts über Session Lifecycle in express-session Dokumentation gefunden.

Also meine Frage ist, wird expressjs oder express-session die Sitzung zerstören? Wann und wie?

+0

Sie suchen 'maxAge' cookie-Eigenschaft in Express-Sitzung und' ttl' Eigenschaft in connect-Memcached – hassansin

+0

Vielen Dank. Ich habe ein anderes Problem, ich setze 'cookie.maxAge' auf' 7' Tage. Aber ich fand, dass die Sitzung in 5 ~ 10 Minuten in Produktionsumgebung abgelaufen ist. Und alles andere funktioniert wie erwartet. Hast du eine Ahnung davon? – Howard

Antwort

0

können Sie verwenden

req.session = null; 
+0

Die Sache ist ohne einen Haken als Java-Web-Container (HttpSessionListener), ich weiß nicht, wann sollte ich es zerstören? Ist das in der Knotenwelt überhaupt kein Problem? – Howard

+0

@Howard - Sie müssen Express-Sitzungen nicht selbst zerstören. Die Sitzungsinfrastruktur wird sie einige Zeit nach dem Ablauf freigeben und dann wird der Garbage Collector sie bereinigen. – jfriend00

Verwandte Themen