的NodeJS会话cookie的浏览器存储
服务器是用的NodeJS快递会话,护照快递
我想避免保存在用户未通过身份验证cookie中,这可能吗?
var sessionStore = new session.MemoryStore;
app.use(session({
cookie: { maxAge: null,
httpOnly: true,
secure: true,
},
store: sessionStore,
resave: 'false',
secret: 'somthing',
name: "id",
saveUninitialized: false
}));
是它在某种程度上可以只保存在用户没有登录成功的饼干吗?谢谢!
回答如下:你必须创建一个明确的会话:https://www.npmjs/package/express-sessions然后会话存储是这样的:
let session = require("express-session");
app.use(session({
secret: "secret",
resave: false,
saveUninitialized: true,
cookie: {secure: true,
httpOnly: true,
maxAge: 1000 * 60 * 60 * 24
}
}));
本次会议将您的网页访问期间进行存储。如果你想设置的值到cookie,只是要求在值的请求,并设定somekind的饼干:
router.route("/login")
.post(function(req, res) {
req.session.Auth = req.body.user // => user values?
})
或者您可以使用Cookie的会话(https://www.npmjs/package/cookie-session)
如果您使用的cookie会话然后如果你所做的任何更改会话变量或从服务器端,然后无需重新启动服务器。
app.use(cookieSession({
name: 'session',
keys: ['key1', 'key2']
}))
app.get('/', function (req, res, next) {
// Update views
req.session.views = (req.session.views || 0) + 1
// Write response
res.end(req.session.views + ' views')
})