gpt4 book ai didi

javascript - 防止cookie被发送到服务器

转载 作者:行者123 更新时间:2023-11-29 14:41:28 25 4
gpt4 key购买 nike

我正在编写一个应用程序,其中大部分状态都存储在客户端。状态有点私有(private)信息,所以我想将它保存在客户端。有一些严格的政策禁止这些信息到达我的服务器。到目前为止,我一直在使用 localStorage,这是一个完美的解决方案。

不幸的是,事实证明 Safari 在 localStorages 和 iframe 方面存在一些问题(123)。如果我使用 cookie,浏览器会将它们发送到服务器,这是 Not Acceptable 。所有存储的数据都使用 javascript 进行管理,不使用 http Set-Cookie header 。

基本用例如下:应用程序在域 A 中有一个“母版”页面,用户可以在该页面上更改其设置,在另一个域 (B) 中有一个页面,其中有一个 iframe 指向域A中的一些特殊页面,并使用postMessage和onmessage来交换一些信息。域A的母版页和域B中嵌入的iframe必须共享一些存储才能运行。

有什么想法吗?

编辑 1

一个想法如下:在 iframe 和“主”页面上也要求用户提供密码,并使用该密码加密私有(private)信息。加密的私有(private)信息可以存储在 cookie 中,因为我的服务器没有用户密码。这是迄今为止最好的解决方案,但对用户来说并不舒适。

最佳答案

根据 this post你可以使用

window.parent.postMessage("Hello From IFrame", "*");

结合父框架中的事件监听器

window.addEventListener ("message", OnMessage, false);

从子框架到父框架的跨域通信。

然后您可以在父框架中使用本地存储来像以前一样保存您的共享信息。

关于javascript - 防止cookie被发送到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37808162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com