来自一个外部站点的 Javascript 应用程序不在 iframe 中运行
Javascript application from one external site not running within iframe
我正在使用iframe将我公司人力资源部门网站的访问权限添加到我们的部门网站上。一切正常,除非用户尚未登录javascript密码应用程序不会运行。我读到这是由于同源政策,但无法找到成功的处理方法。是否有一些代码片段可以添加到 iframe 中以防止它阻止其他站点 javascript?
两个页面必须共享相同的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",然后它们就可以相互编写脚本。
同源策略意味着不能从另一个域访问帧。无论是 iframe,还是您上方的框架或窗口中的其他任何位置。
目的是保护用户。任何网站都可以添加一个加载 www.facebook.com 的iframe,如果您已登录,只需阅读HTML即可提取您的真实姓名和朋友等。有相同的来源策略来防止这种情况。
没有办法绕过它(如果有,那就是一个错误)。唯一的解决方案是通过将两个页面托管在同一域上来避免此问题。
你必须使用和 IFRAME 吗?为什么不能简单地从该司网站链接到人力资源网站或在弹出窗口中显示它。
没有代码片段会改变同源策略,但也许 CORS (http://en.wikipedia.org/wiki/Cross-origin_resource_sharing) 可以帮助您。
干杯
- Rails引擎:使主机应用程序javascript可用于Mounted Engine
- Windows 8应用程序Javascript和SQlite(数据库已锁定)
- 是否有一种从应用程序Javascript代码中自动生成序列图的方法
- 未捕获的语法错误:) 在 MVC 应用程序 JavaScript asp.net 参数列表后丢失
- 如何将excel文件导入Web应用程序(javascript/d3/html)
- 检查是否没有Internet连接-弹出-Windows 10应用程序(Javascript)
- 如何在WinRT应用程序(Javascript、C#)中区分Windows Phone 8.1和Windows 8.1
- jQuery Mobile Windows应用商店应用程序:JavaScript运行时错误:无法获取属性'ind
- Web应用程序Javascript,用于处理来自iOS设备摄像头的信息流(不是应用程序!)
- 在构建应用程序Javascript MVC的过程中,score/buildjs抛出了一个没有解释的错误
- Iframe应用程序JavaScript SDKpublish对话框错误(代码102)
- 如何在windows8商店应用程序(javascript)中播放youtube视频
- AJAX应用程序JavaScript加载问题
- 用于在纯客户端测试应用程序(javascript/jquery)中维护状态和管理i/o的体系结构
- 来自IOS本机应用程序JavaScript函数调用
- 添加必应地图到Windows Phone 8.1应用程序(javascript)
- 消息对话框用户选择Metro应用程序- JavaScript
- 天气应用程序Javascript无法工作
- 需要的应用程序(JavaScript混淆器)
- 我可以在WinRT应用程序(javascript)中使用Sqlite吗?