我需要在快递会话中保存一些令牌。所以,我需要帮助如何在会话对象中保存此令牌。 任何例子都会更有帮助。
在会话对象中保存此类信息也是一种很好的做法,或者我是否需要使用像redis缓存DB这样的持久存储。
答案 0 :(得分:3)
是的,您可以在会话中存储令牌。这通常如下进行:
app.use(session({
token : your_token_value
})
}));
或者,作为替代方式:
app.get('/', function(req, res, next) {
var sessData = req.session;
sessData.token = your_token_value;
res.send('Returning with some text');
});
关于存储地点。它是会话下的一个不同层。您在会话中存储的值可以放在不同的位置:应用程序内存,内存缓存,数据库或cookie中。
对于生产,您可以使用Memory Cache。例如,https://github.com/balor/connect-memcached:
可以通过以下方式实现:
app.use(session({
token : your_token_value,
key : 'test',
proxy : 'true',
store : new MemcachedStore({
hosts: ['127.0.0.1:11211'], //this should be where your Memcached server is running
secret: 'memcached-secret-key' // Optionally use transparent encryption for memcache session data
})
}));