【问题标题】:I can't delete cookies in Express我无法在 Express 中删除 cookie
【发布时间】:2018-02-18 05:14:21
【问题描述】:

如果我使用res.cookie('TEST', 'Test content.').status(200).send('Cookie set.'); 设置一个cookie,我发现它在浏览器中设置正确。但是,在另一个页面上,如果我执行res.clearCookie('TEST').status(200).send('Cookie cleared.');,我会看到 cookie 没有被删除。我想彻底删除这个 cookie。

我也尝试过res.clearCookie('TEST', {path: '/'});,但无济于事。

我正在包括这样的 cookie-parser:

const cookieParser = require('cookie-parser');
app.use(cookieParser(process.env.secret));

上图显示了我在 cookie 被“清除”后看到的内容 - 但它实际上并没有被删除。

如果能得到任何帮助,我将不胜感激。谢谢。

【问题讨论】:

    标签: node.js express cookies session-cookies


    【解决方案1】:

    服务器无法指示客户端删除特定的 cookie。

    它所能做的就是覆盖 cookie,使其值为空,并设置一个已经过去的到期日期(这正是 res.clearCookie 所做的),希望浏览器能够接受提示并实际删除它。

    在您的情况下,即使 cookie 已经过期,您的浏览器也不会出于某种原因将其删除。这不是 Express 可以解决的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-20
      • 1970-01-01
      • 1970-01-01
      • 2012-04-23
      • 2012-01-20
      • 2012-07-06
      • 2019-11-13
      • 1970-01-01
      相关资源
      最近更新 更多