node.js - 尽管 URL 不同,但在多个 Chrome 选项卡中为 cookie 设置了相同的值
问题描述
我的 Angular 应用程序 URL 结构如下:
Domain/clientCode/*
并且作为 Node 应用程序的后端 API 正在设置 cookie,如下所示:
从 URL 中获取 clientCode 并将 cookie 设置为:
response.cookie('client', clientCode, { httpOnly: true });
现在的问题是,当我们在不同的浏览器选项卡 (Chrome) 中快速连续打开多个客户端 URI 时,所有选项卡都会为客户端 cookie 获得相同的值。如果我们在加载前一个客户端选项卡后打开不同的客户端选项卡,则每个选项卡的 cookie 设置正确。
例子:
当我们在 Chrome 的不同选项卡中快速连续打开以下 URL 时:
- 域/ABC/*
- 域/BCD/*
- 域/DEF/*
- 域/XYZ/*
客户端 cookie 对多个选项卡具有相同的值(我们希望每个选项卡的值根据 URL 中的 clientCode 不同)。我知道 cookie 是为域保存的,并且不考虑 URL 中的其他值,但是当我们打开多个 URL 时它工作正常,并且有一点间隙。
提前致谢。
解决方案
发生这种情况是因为您正在为您的域设置静态 cookie。您需要设置动态 cookie 以避免该问题。
例如:您可以使用随机动态值(如Michelle_456900234
. 对于每个登录会话,您将有一个与之关联的动态值。在检索值时,只需找到子字符串用户名。
推荐阅读
- apache-superset - 超集错误 - 抱歉,出了点问题
- node.js - DISCORD JS 有些命令有效有些无效,没有给出错误
- xaml - StrokeDashArray 不适用于 VisualStateManager (UWP)
- python - 在 pandas DataFrame 中保留 None (尽管有 astype() 和 to_parquet())
- coq - 为什么“欧米茄”策略不能解决这样一个简单的问题
- visual-studio-code - Visual Studio Code 无法识别名为“模板”的目录中的文件类型
- html - CSS 选择孙元素而不添加新的 HTML、ID 或 !important
- flutter - 解析JSON数据flutter的内容
- excel - VBA For Each 粘贴在 For Each 的第一个循环中返回公式,然后返回值
- flutter - 在网格视图和顶栏之间添加空间