我有一个托管在https://logindev.example.com上的express后端和一个托管在https://www.dev.example.com上的前端。在前端登录时,身份验证服务器会设置一个cookie,并将example.com设置为域属性。但是cookie不会保存到浏览器中。
不过,我在响应中看到了set-cookie
set-cookie: token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6Imlkb3Vnd2FybmVyQGdtYWlsLmNvbSIsInByb3ZpZGVyIjoiZW1haWwiLCJpYXQiOjE2MDc3NDkwODgsImV4cCI6MjIxMjU0OTA4OH0.dFeBqr_b58WEhsLf-q8IOM6_tANhweqbCIBngLnp1Pk; Domain=example.com; Path=/前端是Angular 10,通过使用HttpClient向auth后端发送身份验证请求,其中credentials头部设置为"include“。身份验证后台使用以下代码设置cookie。
res.cookie('token', 'xxxxx', { domain: 'example.com' });我在谷歌上搜索过这个问题,但还没有找到答案。如果有人能帮我一下,我将不胜感激
提前感谢
发布于 2021-07-26 21:59:55
在cookies设置时间中,只需在域名的第一个中使用.:
Cookie.set('key', 'value', { domain: '.example.com' })cookie来自js-cookie,这是一个非常棒的库,可以更简单地在浏览器中使用Cookie。此技巧将与基域及其所有子域共享点划域的cookie。
在节点环境中,情况与上面相同:
res.cookie('key', 'value', { domain: '.example.com' });https://stackoverflow.com/questions/65261905
复制相似问题