首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >来自未在iframe内运行的外部站点的Javascript应用程序

来自未在iframe内运行的外部站点的Javascript应用程序
EN

Stack Overflow用户
提问于 2012-04-14 02:30:01
回答 3查看 377关注 0票数 1

我正在使用iframe将我公司人力资源部网站的访问权限添加到我们部门的网站。除非用户尚未登录,否则一切正常。javascript密码应用程序不会运行。我读到这是由于同源政策,但还没有找到一个成功的方法来处理它。有没有一些代码片段我可以添加到iframe中,以防止它阻止其他网站的javascript?

EN

回答 3

Stack Overflow用户

发布于 2012-04-14 02:39:56

两个页面必须共享相同的document.domain才能互相编写脚本。

https://developer.mozilla.org/en/document.domain

https://developer.mozilla.org/en/Same_origin_policy_for_JavaScript

如果你的父页面在"myArea.myCompany.net“域下,而你的iframe中的HR页面在"theirArea.myCompany.net”下,你可以将两个document.domain都设置为"myCompany.net“,然后它们就可以互相编写脚本了。

票数 2
EN

Stack Overflow用户

发布于 2012-04-14 02:40:57

同源策略意味着不能访问来自其他域的帧。可以是iframe,也可以是你上方的框架,也可以是窗口中的任何地方。

这样做的目的是保护用户。任何网站都可以添加一个加载www.facebook.com的iframe,如果你已经登录,只需阅读它就可以提取出你的真实姓名和朋友等等。同源策略就是为了防止这种情况发生。

没有办法绕过它,(如果有,那就是一个bug)。唯一的解决方案是通过将这两个页面托管在同一个域中来避免这个问题。

票数 1
EN

Stack Overflow用户

发布于 2012-04-14 02:42:32

你必须使用和IFRAME吗?为什么不能简单地从部门网站链接到人力资源网站,或者在弹出的窗口中显示它。

没有使用相同来源策略的代码片段,但CORS (http://en.wikipedia.org/wiki/Cross-origin_resource_sharing)可能会对您有所帮助。

干杯

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10146342

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档