首页 > 解决方案 > 以子域为目标的 iframe 不会加载。

问题描述

我一直在尝试将 iframe 加载到我的网站中,但它不起作用,并且 Chrome 控制台显示以下错误消息:

拒绝在框架中显示“ https://viewtrip.travelport.com/#!/itinerary?loc=xxx ”,因为祖先违反了以下内容安全策略指令:“frame-ancestors https://viewtripnextgen-api.travelport .com ”。

我也尝试添加https://viewtripnextgen-api.travelport.com为框架祖先,但没有任何区别。我真的不知道如何解决这个问题。

标签: htmlwordpresssecurityiframecontent-security-policy

解决方案


该错误消息意味着您只能在 iframe 中显示该页面,前提是您的<iframe>标签出现在 URL 的页面上https://viewtripnextgen-api.travelport.com

我还尝试将https://viewtripnextgen-api.travelport.com添加为框架祖先

唯一可以做到这一点的方法是运行travelport.com网站。

唯一的其他选择是更改 的 CSP https://viewtrip.travelport.com,您也只能在运行travelport.com网站时执行此操作。

作为想要将其他人的内容放入您的 iframe 的第三方,如果他们说不(他们是),那么您就无法做到。


推荐阅读