首页 > 解决方案 > 在中间件中设置 cookie 后无法继续

问题描述

在中间件中设置 cookie 后我无法继续请求

const somemiddleware = (req, res, next) => {
  // do stuff
  req.cookie('accessToken', token, { signed: true, httpOnly: true, etc... });
  console.log('it should run this line after setting cookie right?');
  next();
}

router.post('/blah', somemiddleware, async (req, res) => {
  // I expect req.signedCookies to be the token assigned from above
});

终端显示 req 在之后结束,req.cookie并且不会继续到控制台日志和其余代码。

标签: node.jsexpresscookies

解决方案


res.cookie(),不是req.cookie()

您从请求中读取 cookie。您在响应中设置 cookie。

如果你try/catch在它周围加上一个,你应该会看到一个异常,我很惊讶你的服务器日志中没有任何关于它的内容。


推荐阅读