IFrame不能正常加载页面分析
主要有如下几点原因:
1、页面的加载需要执行js,然而出于安全,一般iframe里面的js默认是不执行的。
解决方法:
iframe标签中加入如下属性: sandbox="allow-scripts"
属性详解:
allow-same-origin允许 iframe 内容被视为与包含文档有相同的来源。
allow-top-navigation允许 iframe 内容从包含文档导航(加载)内容。
allow-forms允许表单提交。
allow-scripts允许脚本执行。
2、服务端响应信息中存在X-Frame-Options首部,给浏览器提供了在iframe中显示该网站的规则
目前没有针对普通用户的解决方案
属性具体如下
DENY --- 表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。
SAMEORIGIN --- 表示该页面可以在相同域名页面的 frame 中展示。
ALLOW-FROM https://example.com/ --- 表示该页面可以在指定来源的 frame 中展示。