拒绝构建“https://www.youtube.com/”,因为它违反了以下内容安全策略指令:“frame-src 'X'

问题描述 投票:0回答:1

我正在尝试使用 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'。

我不确定上面我到底做错了什么。

javascript html content-security-policy meta-tags
1个回答
0
投票

您需要设置以下CSP:

<meta http-equiv="Content-Security-Policy" content="frame-src youtube.com www.youtube.com">

基于这个答案

© www.soinside.com 2019 - 2024. All rights reserved.