无法通过 Chrome 上的 iFrame 登录应用,但直接查看时可以

Posted

技术标签:

【中文标题】无法通过 Chrome 上的 iFrame 登录应用,但直接查看时可以【英文标题】:Can't log in to app via iFrame on Chrome, but can when viewed directly 【发布时间】:2013-08-19 11:18:50 【问题描述】:

我正在为音乐节构建一个拍卖应用程序,该应用程序正在通过iFrame 嵌入到音乐节的网站中。

我遇到的问题是 Chrome。查看directly时(在源站点上)我可以正常登录应用程序,但是通过iFrame查看应用程序时on the festival's website我似乎无法登录。但是,我仍然可以注册用户。我还应该注意到,这个系统是基于 CodeIgnitor 构建的。

我完全不知道为什么会这样?它与跨域策略有关吗?非常感谢您对此提供任何帮助。

【问题讨论】:

您的应用程序在其他浏览器上运行良好吗?? 是的,它在 Safari、Firefox、Opera、Chrome/Safari for ios 中运行良好...... 看看这个answer可能对你有帮助 我刚刚创建了一个简单的 iframe,并且能够注册和登录,我在提供的链接上看不到您正在使用的 iframe。 【参考方案1】:

您正在与之交互的站点可能已经实施了针对Clickjacking 的保护。保护通常包括中断 iFrame 或完全阻止来自 iFrame 的所有请求。

我会联系网站开发人员并询问他们实施的任何点击劫持保护措施 - 他们可能能够将您的域名列入白名单,但这取决于他们的技术等。

【讨论】:

我不确定这是否是问题所在,因为站点开发人员知道我的应用程序并允许它并自己实现了 iFrame 代码。这也是 Chrome 特有的

以上是关于无法通过 Chrome 上的 iFrame 登录应用,但直接查看时可以的主要内容,如果未能解决你的问题,请参考以下文章

Chrome 65 无法打印隐藏的 iframe

无法通过 chrome 扩展与 iFrame 交互

无法访问 iframe 中加载的自己域上的 httponly 标记 cookie

无法使用 jquery 访问通过 google chrome 内容脚本注入的 iframe 的内容

Chrome 中的 iframe 错误:无法从“窗口”读取“localStorage”:此文档的访问被拒绝

视频取消静音时无法通过 iframe API 播放 YouTube 视频