Ok Soo 我有 3 个站点。都需要存储一个cookie,每个站点都需要能够看到。 我有一个单一的 ASPX,它为所有 3 个站点存储这个 cookie。 基本上在站点的每个页面上都有一个调用 ASPX 并使其存储 cookie 的 javascript。如果 ASPX 在一个域上并且我将 aspx 作为图像加载,为什么每个站点不写入相同的 cookie?基本上让我这样分解。
X.com y.com z.com 都存在
y.com/cookiesave.aspx 也存在。它写一个名为 bob 的 cookie,如果它不存在则将其设置为一个 Guid...
所有页面上的 x.com、y.com 和 z.com 基本上都有一个从 y.com/cookiesave.aspx 加载图像的 javascript,它返回一个 1x1 透明图像。
然而它似乎没有看到这些来自 y.com 的 cookie。
它仍然将所有三个站点视为分别保存和加载 cookie。它怎么知道脚本是否只在 y.com 上?
最佳答案
阻止这种情况的保护措施由浏览器制造商实现,以防止跨站点脚本攻击。如果你有一个合理的目标,那么就以这种方式实现它;使用 x.my.com
、y.my.com
和 z.my.com
并为 设置您的 cookie my.com
而不是每一个。
另请注意:针对此类操作的保护措施不仅会被浏览器阻止,还有安全网关、防火墙等会查找此行为,因为它被假定为攻击。除非你正在执行攻击,否则请按照我建议的方式进行。哦,不要进行攻击——如果那是你想做的。
关于javascript - 存储 Cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4306873/