2016-04-20 4 views
0

В то время как я разрабатывал Java Web, есть конфигурации в web.xml следующим образом:[nodejs] Как expressjs уничтожает истекший сеанс?

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

Это означает, сессия будет уничтожена в 15mins, когда соответствующий клиент (веб-браузер) не доступны на веб-сайте. Я могу даже использовать утилиту HttpSessionListener, чтобы иметь крючок для жизненного цикла сеанса.

Но когда я развиваю узел web через expressjs с express-session и connect-memcachedmemcached. Я ничего не нашел о жизненном цикле сеанса в документации express-session.

Так что мой вопрос в том, будет ли expressjs или express-session уничтожить сеанс? Когда и как?

+0

вы ищете 'печенье собственности maxAge' в экспресс-сессии и' ttl' собственности в Connect-Memcached – hassansin

+0

Спасибо много. У меня другая проблема, я установил 'cookie.maxAge'' '7' дней. Но я обнаружил, что сессия будет истек через 5-10 минут в производстве env. И все остальные env работают так, как ожидалось. У вас есть какие-то сведения об этом? – Howard

ответ

0

вы можете использовать

req.session = null; 
+0

Вещь без крючка, как это сделал веб-контейнер java (HttpSessionListener), я не знаю, когда я должен его уничтожить? Разве это не проблема в мире узлов? – Howard

+0

@Howard - Вам не нужно самостоятельно уничтожать сеансы Express. Инфраструктура сессий будет выпускать их через некоторое время после их истечения, а затем сборщик мусора очистит их. – jfriend00

Смежные вопросы