【问题标题】:Vercel Serverless functions send response cookieVercel 无服务器函数发送响应 cookie
【发布时间】:2020-09-10 16:21:51
【问题描述】:

我想通过 Vercel 无服务器函数的响应发送一个“httpOnly”cookie。我没有使用 Express。

我试过res.setHeader("Set-Cookie", `ck=${cookie_value}`);

这不起作用。如何发送 cookie 并为其设置过期时间?

【问题讨论】:

  • 你找到设置cookie的方法了吗?请与我们分享。

标签: node.js cookies vercel


【解决方案1】:

标准 Node.js setHeader 与标准 Set-Cookie 标头配合使用。

尝试使用这样的数组:

module.exports = (req, res) => {
  res.setHeader('Set-Cookie', ['ck=value; Expires=Tue, 01 Dec 2020 00:00:00 GMT; HttpOnly']);
  res.end('It worked, check your cookies in devtools');
}

为了更好的界面,您可以尝试安装cookie 包。

const { serialize } = require('cookie')

module.exports = (req, res) => {
  const cookie = serialize('ck', 'value', {httpOnly: true, expires: new Date('2020-12-01')})
  res.setHeader('Set-Cookie', [cookie]);
  res.end('It worked, check your cookies in devtools');
}

【讨论】:

  • 这在 Vercel 无服务器中对我不起作用。 cookie 只是作为正文的一部分发送。
  • 你让它工作了吗?这种无服务器的东西是浪费时间。这不实用,而且似乎急于上市。
  • 没有。我刚刚发送了 accessToken 作为响应的一部分。不正确,但遗憾的是,我不知道还能做什么。
猜你喜欢
  • 2020-12-18
  • 1970-01-01
  • 1970-01-01
  • 2018-06-26
  • 2016-10-15
  • 2017-11-25
  • 2017-10-05
  • 2019-03-10
  • 2019-06-23
相关资源
最近更新 更多