2

会话变量是否在不同浏览器之间共享?如果没有,我可以在浏览器之间共享信息,类似于缓存的功能,但范围更广。

4

3 回答 3

1

这取决于您的会话实现所支持的内容。默认情况下,会话对于一个浏览器来说是唯一的,因为它是由您的浏览器发出的会话 cookie 标识的。只有发出 cookie 的浏览器会话才能识别服务器上的会话。

还有其他不基于会话 cookie(url、sql server 支持)的实现,它们允许您跨浏览器共享

于 2012-05-24T03:27:15.620 回答
1

不。会话变量与会话标识符相关联,该标识符仅由启动会话的浏览器实例知道(或者在最近的 IE 版本更复杂的情况下,由底层引擎知道,但它仍然是所有 IE)。

于 2012-05-24T03:27:22.510 回答
1

会话特定于用户的会话 ID(通常存储在名为 的 cookie 中ASP.NET_SessionID),在多个浏览器中不会相同(除非出现问题)。

要跨多个浏览器持久保存数据,您将不得不以某种其他格式(可能是数据库)将数据存储在服务器端。如果数据需要特定于某些个人,您可能需要设置身份验证方案以正确地将数据限制为适当的用户。

于 2012-05-24T03:30:49.990 回答