问题标签 [session-storage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
html - 如何在子窗口中唯一标识 iframe?
我们有以下情况:
Iframe 由一个域 (A) 中的页面嵌入和控制。
我们无权更改域 A 的代码。
Iframe 中的内容是从另一个域 (B) 传递的。
我们正在使用会话存储来处理 iframe 中的所有会话变量。
有一个 Comet 风格的推送正在发生,以向 iframe 提供实时更新,并且为了完成这项工作,我们需要能够唯一地识别每个 iframe。
为此,我们将唯一 ID 存储在 sessionStorage 变量中,当然问题就在这里。
一切都很好,直到域 A 使用“window.open”打开一个子窗口,我们最终得到以下场景。
加载 B(2) 时,会话存储按如下方式处理:
所以......唯一ID在大多数浏览器中被克隆(或在Opera的情况下共享)
在Opera中,因为它似乎共享会话存储,所以可能没有解决方案。
在Firefox中,我们就像一个全新的窗口,所以没有问题。
在Safari和Chrome中,我们可以执行以下操作
在IE中,我们无法访问 window.opener.frames.THE_IFRAME,因为由于跨域限制,它根本不允许我们访问 window.opener 中的任何内容。
任何关于如何在 IE 中进行这项工作的建议(我们可以在没有 Opera 支持的情况下生活),或者总体上更好的解决方案,将不胜感激。
php - 运行一整夜后PHP Session为空
我有一个程序可以处理大约 20,000+ 行 CSV 文件。它读取文件并发送包含来自 CSV 文件的数据块的 ajax 请求,处理它们并返回使用 javascript 显示的结果。
这个过程需要很长时间,通常需要3个多小时。
我的问题是我将数据存储在需要访问以导出新处理的数据的会话变量中。我跑了一夜,当我早上回来处理完成时,我点击了导出,会话变量是空白的。
我检查了会话“生命周期”(session_get_cookie_params())设置为 0,这意味着它应该一直存在到浏览器关闭。
除了将数据插入 URL 并将其传递给函数等之外,还有什么方法可以在浏览器关闭之前补救丢失会话?
cookies - Web 存储是否比用于存储 sessionId 的 cookie 更可取?
使用本地存储或会话存储而不是使用 cookie 在客户端保存 sessionId(以避免每次登录)是否更安全?
javascript - 用户可以修改存储在 sessionStorage 中的变量的值吗
我正在使用客户端 JavaScript 来使用 Web Storage 存储一些变量,更具体地说,是 sessionStorage。
但我不确定用户是否可以以任何方式简单地修改这些变量的值?如果是这样,请举例说明这种情况是如何发生的。
javascript - 是否有类似于 sessionStorage 但具有多维键的东西?
我想在本地保存树状结构的值,然后根据用户交互检索它们。经过一些研究,我发现sessionStorage
(或localStorage
)可能是一个很好的方法来做到这一点。但我无法保存嵌套数据。
通常你有:
我试图实现类似的东西:
但我有一个undefined
错误。
我检查了其他几个存储库,但它们只提供单个键值对选项。有什么我想念的吗?
html - HTML5 会话存储监听器
我有一个 RESTful 后端,每个定义都是无状态的。但是,我确实需要身份验证。为此,我计划使用基本 HTTP 身份验证。由于这需要在每个请求中发送用户名和密码,因此我想将它们存储在客户端。
我正在考虑为此使用 HTML5 会话存储。整体浏览器支持对我的应用程序来说已经足够好了,但是有一个问题。
我需要在会话存储被清除时捕获事件,例如通过关闭选项卡或单击注销按钮。在实际清除会话存储之前,我需要最后一次将凭据发送到 RESTful 服务器,以便它可以为该用户执行清理操作。
问题不在于注销按钮,而在于关闭选项卡或浏览器时更是如此......
我如何捕捉这个事件(也许有一些监听器?),并延迟它的发生,直到我进行最终的 REST 调用?
sql-server - 使用 SQLServer 存储身份验证时丢失身份验证
我使用 InProc 模式在我的 mvc3 应用程序中存储会话,但由于大约每 20 分钟重新启动 IIS,因此更改了对 SQLServer 的存储身份验证。与数据库的连接很好,会话正在存储,但身份验证不会持续很长时间,重启后会丢失
网络配置
jquery - 做 Ajax Json 提要的 sessionStorage
我正在尝试实现一个非常简单的程序,但由于我的技能和知识而无法完成。 我得到的 => 我从服务器检索 json 提要,它工作正常。
我需要什么 =>检索到的 json 提要将其添加到 sessionStorage 中,因此当我再次(在同一会话中)返回此页面时,应从 sessionStorage 中提取数据,而不是通过 Ajax 从服务器中提取数据。希望它确实有意义。
代码是:
小提琴在这里:http: //jsfiddle.net/j8QGv/
请使用 fiddle 进行修改,以便其他用户可以使用该代码作为示例。
真的很感谢你的帮助...
javascript - 代理缓存承诺
我有一组像这样连接到服务器的承诺:
我想定义一个叫做缓存的代理函数,像这样工作:
这个函数应该返回承诺。如果在 cashe 中找到 'getSomething' 结果,则该承诺将立即解决,否则,将返回原始 'getSomething' 承诺。
我开始写一个函数:
问题是:我应该如何计算存储密钥?(即我应该用什么代替什么???)
php - 允许脚本与 SESSION 身份验证一起运行
我有一个 php 脚本,如果文本框表单中的条目与数据库中的任何内容匹配,则创建一个会话:
另一个脚本是这样的:
但是第二个脚本没有接听会话