【问题标题】:guidelines for multi user, multi session, multi tab, cookie environment [closed]多用户、多会话、多选项卡、cookie 环境的指南 [关闭]
【发布时间】:2011-06-10 22:51:16
【问题描述】:

我们当前的应用程序运行良好,但是当您尝试行为不端时,我们发现当在具有不同组织的多个选项卡中使用同一用户登录时(主页面中有一个组织下拉菜单,用于在更改 cookie 时设置 cookie。 )

在标签一中它是 org 1 和标签 2 它是 org2 ,cookie 中有 later org 2 但是当我们返回 tab1(其中有 org1)并保存记录时 org 2 将与记录一起保存

那么有人可以与我们分享一些清单来解决这些类型的问题吗?

【问题讨论】:

    标签: asp.net asp.net-mvc-2 architecture


    【解决方案1】:

    我希望你能找到一个优雅的解决方案来解决这个问题,但是 AFAK 浏览器的一个实例只是共享一个身份。

    为了处理这种情况,我们在母版页上使用 HIDDEN,这是主窗体的一部分。它的值是在第一页加载时随机生成的。稍后,该值在请求之间保留。会话值与隐藏值的 HashTable 键一起存储。

    还需要 2 个 hack 才能让它工作。

    1. Response.Redirect 使用简单的表单完成,该表单使用 POST 方法将 HIDDEN 值传递到新页面。
    2. 使用左键单击的所有 href 也会发布 HIDDEN 值(如果用户使用“在新选项卡/窗口中打开”直接重定向而不发布只会创建新的 HIDDEN 值 - 新子会话。)

    【讨论】:

      【解决方案2】:

      您可以添加带有数据的隐藏字段以识别每个视图。 您将所有数据存储在服务器端,例如会话、缓存、数据库并提供“唯一”视图

      【讨论】:

        【解决方案3】:

        很遗憾,您对此无能为力。浏览器在选项卡之间共享 cookie。表单身份验证使用 cookie 来跟踪用户。这与其他网站(例如 gmail)的行为相同。

        【讨论】:

          猜你喜欢
          • 2020-10-12
          • 1970-01-01
          • 2011-10-21
          • 1970-01-01
          • 2010-10-22
          • 2011-01-14
          • 1970-01-01
          • 2011-07-27
          • 2018-07-05
          相关资源
          最近更新 更多