html - 以子域为目标的 iframe 不会加载。
问题描述
我一直在尝试将 iframe 加载到我的网站中,但它不起作用,并且 Chrome 控制台显示以下错误消息:
拒绝在框架中显示“ https://viewtrip.travelport.com/#!/itinerary?loc=xxx ”,因为祖先违反了以下内容安全策略指令:“frame-ancestors https://viewtripnextgen-api.travelport .com ”。
我也尝试添加https://viewtripnextgen-api.travelport.com
为框架祖先,但没有任何区别。我真的不知道如何解决这个问题。
解决方案
该错误消息意味着您只能在 iframe 中显示该页面,前提是您的<iframe>
标签出现在 URL 的页面上https://viewtripnextgen-api.travelport.com
。
我还尝试将https://viewtripnextgen-api.travelport.com添加为框架祖先
唯一可以做到这一点的方法是运行travelport.com
网站。
唯一的其他选择是更改 的 CSP https://viewtrip.travelport.com
,您也只能在运行travelport.com
网站时执行此操作。
作为想要将其他人的内容放入您的 iframe 的第三方,如果他们说不(他们是),那么您就无法做到。
推荐阅读
- javascript - 调用`event.preventDefault`时我做错了什么?
- python - Heroku 上的 Scrapy 爬虫返回 503 服务不可用
- c - -2^31 作为最小整数,为什么?
- c# - 导出 Excel 报表服务器时,现有连接被远程主机强行关闭
- python - 从 PyTorch 中的网络输出计算梯度会出错
- svg - 为什么渲染一组 svg 与一个 svg 不同?
- python - 如何在 python 3.6 中使用分布式包?
- java - 在 Android 5 中支持 JAVA-8 Jar - React Native
- javascript - 设置超时后InnerText闪烁
- in-app-purchase - 如何在 App Purchase 中获取 Volume App Store