【问题标题】:IE won't start session from an iframe?IE 不会从 iframe 开始会话?
【发布时间】:2010-04-11 08:17:18
【问题描述】:

任务是绕过远程服务器上的登录表单,并通过调用服务器的 Web API 获取 session_id。这样该用户就不必登录两次。

由于无法为不同的域设置 cookie。我们想出的是 - 在远程服务器上放一个小文件,我们从隐藏的 iframe 向其传递加密的 session_id,它应该为远程应用程序启动一个适当的会话,然后将其加载到另一个 iframe 中。

这种方法在 FF/Chrome 中可以正常工作,但在 IE 中不行……但是,如果我将 url 从 iframe 的 src 属性复制到自制的远程授权脚本到 IE 的地址栏并从那里加载,会话获取按预期创建。但由于某种原因,它只是不想从 iframe 做同样的事情。

有人知道为什么会这样吗?

【问题讨论】:

  • 为什么不直接链接到该服务而不是将其放入 iframe 中?您的方法看起来像网络钓鱼。
  • 我们的客户希望这样。某种集成到另一个应用程序的后端。将打开远程应用程序的链接或按钮放在单独的窗口中,他们不认为是一个选项:(否则它当然会简单得多。这有什么好骗的?我们得到了一个有效的 session_id,从经过身份验证的 Web API 获得打电话。

标签: php session iframe cookies internet-explorer


【解决方案1】:

我刚刚遇到了同样的问题,并通过将提供 iframe 的服务器上的时间设置为包含 iframe 的服务器的时间来解决它。

【讨论】:

    【解决方案2】:

    好的,我们为 IE 所做的,我们只是将整个浏览器重定向到授权脚本,然后再次将其重定向回来。至少这以某种方式解决了一个问题。

    谁有更好的解决方案?

    【讨论】:

      猜你喜欢
      • 2011-11-04
      • 1970-01-01
      • 2022-01-11
      • 2017-08-03
      • 2010-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多