Recommended Method for refreshing session expiration time in Node. js, node. jssession

Source: Internet
Author: User

Recommended Method for refreshing session expiration time in Node. js, node. jssession

In Node. js, we usually use the express-session package to use and manage sessions and save the session status between the server and the client browser. So how can we refresh the session expiration time when the user refreshes the current page or clicks the button on the page? Similar to the session Status in ASP. NET, as long as the page remains active for a certain period of time, the session will not expire. The following code implements this function. We Add the following middleware to the Node. js code:

// use this middleware to reset cookie expiration time// when user hit page every timeapp.use(function(req, res, next){  req.session._garbage = Date();  req.session.touch();  next();});

In this way, when a request comes over, the middleware will re-Modify the expiration time of the session to achieve the expected results.

Then, add the session usage in the Code:

app.use(session({    secret: 'test',     resave: false,     saveUninitialized: true,    cookie:{      maxAge: 1000*60*60 // default session expiration is set to 1 hour    },    store: new MemcachedStore({      hosts: ['127.0.0.1:9000'],      prefix: 'test_'    })}));

The above session uses memcached as the session storage method, for how to use memcached can refer to the address on Github https://github.com/balor/connect-memcached

Of course, you can also use other session storage methods, such as memoryStore, redis, and mongoDB.

The above Implementation Method of refreshing the session expiration time in Node. js is all the content shared by Alibaba Cloud xiaobian. I hope you can give us a reference and support for the customer's house.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.