重定向到新的子域并在重定向的子域上设置 cookie
Redirect to a new subdomain and set cookie on the redirected subdomain
快递:4.x
NodeJS:12.x
在 a.example.com 我有一个 GET
监听器重定向到 b.example.com 并设置b.example.com.
上的 cookie
app.get('/foo', (req, res) => {
res.cookie('name', 'foo', { domain: '.example.com', path: '/', secure: true })
res.cookie('age', '21', { domain: '.example.com', path: '/', secure: true })
res.redirect(302, 'https://b.example.com');
})
但是 none 的 cookie 是在 b.example.com 中设置的。我在这里错过了什么?
好的,所以我通过尝试 res.cookie 选项找到了答案。如果有人遇到这个,这是正确的配置。
如果您的客户端 javascript 应用程序需要读取 cookie,请将 httpOnly 标志设置为 false。
res.cookie('user', 'foo', { path: '/', domain: '.example.com', httpOnly:false secure: false })
res.cookie('age', '21', { path: '/', domain: '.example.com', httpOnly:false, secure: false })
res.redirect('https://b.example.com');
如果您在本地检查此内容,即在 http://localhost 上,您将看不到安全 cookie。
快递:4.x
NodeJS:12.x
在 a.example.com 我有一个 GET
监听器重定向到 b.example.com 并设置b.example.com.
app.get('/foo', (req, res) => {
res.cookie('name', 'foo', { domain: '.example.com', path: '/', secure: true })
res.cookie('age', '21', { domain: '.example.com', path: '/', secure: true })
res.redirect(302, 'https://b.example.com');
})
但是 none 的 cookie 是在 b.example.com 中设置的。我在这里错过了什么?
好的,所以我通过尝试 res.cookie 选项找到了答案。如果有人遇到这个,这是正确的配置。
如果您的客户端 javascript 应用程序需要读取 cookie,请将 httpOnly 标志设置为 false。
res.cookie('user', 'foo', { path: '/', domain: '.example.com', httpOnly:false secure: false })
res.cookie('age', '21', { path: '/', domain: '.example.com', httpOnly:false, secure: false })
res.redirect('https://b.example.com');
如果您在本地检查此内容,即在 http://localhost 上,您将看不到安全 cookie。