我正在尝试使用 iframe 在我的网站中嵌入 YouTube 视频,在我决定开始使用 SSL 证书之前它工作得很好,然后这些 CSP 错误开始出现。
我正在执行以下 HTML 代码:
<iframe width="1200" height="630" src="https://www.youtube.com/embed/X"
allowfullscreen="allowfullscreen"
mozallowfullscreen="mozallowfullscreen"
msallowfullscreen="msallowfullscreen"
oallowfullscreen="oallowfullscreen"
webkitallowfullscreen="webkitallowfullscreen" >
</iframe>
我已尝试以下所有方法来修复错误,但仍然无法正常工作:
<meta http-equiv="Content-Security-Policy" content="frame-src 'self' *">
<meta http-equiv="Content-Security-Policy" content="frame-src 'self' https://www.youtube.com/">
<meta http-equiv="Content-Security-Policy" content="frame-src 'self' https://youtube.com/">
<meta http-equiv="Content-Security-Policy" content="frame-src 'self' youtube.com *.youtube.com">
并且总是给出如下错误:
拒绝构建“https://www.youtube.com/”,因为它违反了以下内容安全策略指令:“frame-src 'X'。
当我不添加任何有关 CSP 的元语句时,它会出现以下错误:
拒绝构建“https://www.youtube.com/”,因为它违反了以下内容安全策略指令:“frame-src 'none'。
我不确定上面我到底做错了什么。
您需要设置以下CSP:
<meta http-equiv="Content-Security-Policy" content="frame-src youtube.com www.youtube.com">
基于这个答案。