【问题标题】:How can I persist a session in an iframe?如何在 iframe 中保持会话?
【发布时间】:2010-10-29 09:14:18
【问题描述】:

假设我有一个网络应用程序,我想使用 iframe 嵌入到任何其他网站中。 iframe 引用我的网站并独立于托管网页运行。

好吧,浏览器将 iframe 视为第三方站点,因此其会话 cookie 被视为第三方 cookie。存在一些使浏览器满意的方法(例如 P3P 标头),但用户仍有可能完全禁用第三方 cookie。如果是这样,那么会话 cookie 不能在 iframe 中持久存在。

在第三方网站的 iframe 中保持会话的好方法是什么?

【问题讨论】:

    标签: security session browser iframe cookies


    【解决方案1】:

    我在这里遇到了类似的问题。有一种解决方法(如果您的意图是跨站点跟踪用户行为,则该方法无效)。

    我。在要托管 iframe 的域上放置第一方持久性 cookie。 (这可以使用 JavaScript 完成)。

    二。动态注入 iframe 并将 cookie 的值传递给您的网站。

    三。如果您打算跨站点跟踪用户行为,请修改上述代码,以便在浏览器允许的情况下使用第三方 cookie,否则切换您使用上述方法。

    我还没有遇到任何其他解决此问题的方法。如果您找到更可接受的解决方案,请告诉我。

    【讨论】:

      【解决方案2】:

      我的目的是在 iframe 中跟踪会话,以便点击和重新加载保持状态。无需在 iframe 和托管站点之间链接会话。

      我能想到的最好的方法是无 cookie 会话。这有点手动,但这个站点运行 PHP,我只需要确保查询字符串始终包含“PHPSESSID=x”,它会自动附加到该会话 ID。

      【讨论】:

        猜你喜欢
        • 2015-03-06
        • 1970-01-01
        • 2018-06-26
        • 2012-05-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多