解决iframe框架中无法使用wordexport等功能

最近在iframe框架中使用wordexport插件时遇到了一个坑,在iframe外使用一切正常但是在iframe框架却不行,点击输出word没反应而且还不报错。找了一整天原因终于在从来不看的警告里找到了这个:

Download is disallowed. The frame initiating or instantiating the download is sandboxed, but the flag ‘allow-downloads’ is not set. See https://www.chromestatus.com/feature/5706745674465280 for more details.

于是给代码加上sandbox=“allow-downloads”,困扰我好几天的问题彻底解决,随便立碑纪念一下!

<iframe id="frmmain" src="mainPage.html" scrolling="auto" sandbox="allow-downloads" ></iframe>

下面是iframe框架中额外的限制,需要什么在沙箱里加上什么。

对框架中的内容施加额外的限制。该属性的值可以为空以应用所有限制,或以空格分隔的标记以解除特定限制:

allow-forms:允许资源提交表单。如果不使用此关键字,则阻止表单提交。
allow-modals:允许资源打开模式窗口。
allow-orientation-lock:允许资源锁定屏幕方向。
allow-pointer-lock:允许资源使用Pointer Lock API。
allow-popups:允许弹出窗口(例如window.open(),target =“ _ blank”或showModalDialog())。如果不使用此关键字,则弹出窗口将以静默方式无法打开。
allow-popups-to-escape-sandbox:允许沙盒文档打开新窗口,而这些窗口不会继承沙盒。例如,这可以安全地将广告沙箱化,而不必对广告链接到的页面施加相同的限制。
allow-presentation:让资源开始演示会话。
allow-same-origin:如果不使用此令牌,则资源被视为来自特殊来源,该来源始终失败于同源政策。
allow-scripts:让资源运行脚本(但不创建弹出窗口)。
allow-storage-access-access:允许资源使用Storage Access API请求访问父级的存储功能。
allow-top-navigation:允许资源浏览顶级浏览上下文(一个名为_top的浏览上下文)。
allow-top-navigation:允许资源导航顶级浏览上下文,但仅在由用户手势启动的情况下。
关于沙箱的注意事项:

如果嵌入式文档的来源与嵌入页面相同,则强烈建议不要同时使用allow-scripts和allow-same-origin,因为这会使嵌入式文档删除sandbox属性,这使其安全性比不使用沙箱属性。
如果攻击者可以在沙盒iframe外部显示内容,例如查看者在新选项卡中打开框架,则沙盒无用。此类内容也应从其他来源提供,以限制潜在的损害。
Internet Explorer 9和更早版本不支持sandbox属性。
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值