违反了具有星号值的框架祖先

时间:2018-03-07 15:44:48

标签: html http content-security-policy

今天我在chrome和safari中遇到了这个奇怪的控制台错误:

拒绝在框架中显示...因为祖先违反了以下内容安全策略指令:“frame-ancestors *”。

如何违反*?语法错了吗?

1 个答案:

答案 0 :(得分:0)

这确实应该是一条评论,但我的声誉不够。我今天已经尝试将Twitter时间轴嵌入到React-Native WebView中。得到时间表显示后,我遇到了无法正常播放的视频。将WebView连接到chrome devtools上,我发现与您有同样的错误。

在React-Native Web视图中,您可以传递要显示的HTML和一个'baseUrl':

source={{
  html: '<html><body>Some stuff that generates a twitter timeline in an iframe</body></html>',
  baseUrl: ''
}}>

如上所述,我已将我的设置为空,我认为这会创建一个网址为“ about:blank ”的网络视图。当我将其更改为“ https://www.twitter.com ”时,帧祖先的冲突消失了,视频播放成功。然后,我将该网址更改为“ https://www.ifThisIsEmptyThenVideoWillNotPlay.com ”,该网址仍然有效,因此我想它只能是一个网址。我不确定这是否会有所帮助,但是我觉得我不得不把它放到某个地方,因为它似乎让我望而却步...