[英]How to manage session in Node.js
我正在使用express.session和connect-mongo作為我的DataStore。
我面臨的是......在我的服務器中,我有20個不同的app.get()調用。 但並非所有人都需要檢查會話。
但是,如果我在服務器的開頭執行此操作:
express.createServer( express.session({ ... }));
然后每個調用都會觸發express.session,從而將會話設置為mongoDB。
如何限制我只想觸發express.session?
e.g. app.get('/getASession') will get a session
app.get('/donotGetSession') will not even trigger express.session
我找到了解決方案。 express.session作為一個函數返回。 所以我可以這樣做:
global.mySession = express.session({ secret: session_secret,
store:new MongoStore({
db: session_db_name,
host: session_db_ip,
port: session_db_port
})
});
app.get('/checkSession', mySession, function (req, res) {
res.send("<div>ok</div>");
});
所以,如果我不想使用會話,那么我不會將mySession放在那里。 :)簡單。 我喜歡節點。 :d
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.