无法使用快递中间件创buildcookie
每当新用户注册我的应用时,我都会尝试创build一个cookie,表示这是他们第一次login。 我发现这个线程 ,大致遵循它,但它不工作。
这是我现在的代码:
// setting up the middle ware export default function () { return function () { const app = this app.use(cookieParser()) app.post('/app/signup/end', [firstTimeCookie(app), signUp(app)]) } }
不工作的中间件是firstTimeCookie()
, signUp()
工作正常。
// in firstTimeCookie: export default function (app) { return function (req, res, next) { const cname = 'FIRST_SIGNUP' const cvalue = true var cookie = req.cookies.cookieName if (!cookie) { res.cookie(cname, cvalue, { maxAge: 1000 * 60 * 60 * 24 * 999999 }) } else { console.log('cookie already exists') } next() } }
我究竟做错了什么?
问题是cookie
是undefined
。
更改:
var cookie = req.cookies.cookieName
对于:
var cookie = req.cookies['FIRST_SIGNUP'];
那么你将能够处理该cookie:
if (!cookie) { console.log('Cookie not there'); resp.cookie('FIRST_SIGNUP', 'Hello World', { maxAge: 1000 * 60 * 60 * 24 * 999999 }); } else { console.log(cookie); console.log('cookie already exists'); } next();