如何在 cookie-session 中间件中检测到 'req.session' 更改?
How is 'req.session' change detected in cookie-session middleware?
来自Readme.md file,它说,
如果 req.session
的内容被更改,中间件将自动添加 Set-Cookie
header 到响应。
检测req.session
变化的实现在哪里?你能指出代码或解释一下如何检测到这个变化吗?
Object.defineProperty
https://github.com/expressjs/cookie-session/blob/3dba6fb1287b19ee2f0cb3edb8a0f2afcf65bb7f/index.js#L74:
Object.defineProperty(req, 'session', {
configurable: true,
enumerable: true,
get: getSession,
set: setSession <---- this one
})
setSession
在赋值时调用,setSession
会set the cookie
来自Readme.md file,它说,
如果 req.session
的内容被更改,中间件将自动添加 Set-Cookie
header 到响应。
检测req.session
变化的实现在哪里?你能指出代码或解释一下如何检测到这个变化吗?
Object.defineProperty
https://github.com/expressjs/cookie-session/blob/3dba6fb1287b19ee2f0cb3edb8a0f2afcf65bb7f/index.js#L74:
Object.defineProperty(req, 'session', {
configurable: true,
enumerable: true,
get: getSession,
set: setSession <---- this one
})
setSession
在赋值时调用,setSession
会set the cookie