嵌入式 YouTube 视频在 iframe HTML 中不可用



我有一个嵌入式YouTube视频列表。我的问题是,在我显示的四个视频中,有一个返回错误:Video not available.

我尝试过更改浏览器,但它也不起作用。我还检查了视频是否允许嵌入外部。如果我查看浏览器的控制台,则不会引发异常。

<li class="col-sm-3 col-xs-6 single_item vid">
<iframe width="100%" height="315" src="https://www.youtube.com/embed/KdbDDVcw7qc?rel=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<figcaption class="overlay">
</figcaption>
</li>

有没有人知道,为什么这个视频不起作用,但其他人都行?

YouTube 禁止在没有公共领域的localhost environment中嵌入某些视频,但您的视频可以通过public domain/ sub-domain尝试使用网络托管应用程序或在线 html 工具毫无问题地嵌入。

它工作得很好。我尝试嵌入四个不同的视频,它们都运行良好。这是链接 https://jsfiddle.net/Arpit09/kt1dwqjp/7/

<iframe width="100%" height="315" src="https://www.youtube.com/embed/KdbDDVcw7qc?rel=0" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

我们遇到了非常相似的问题,但此处和其他 SO 问题中列出的标准方法都没有回答/解决我们的问题。

在我们的案例中,问题仅限于具有许可证内容的视频,通常是来自知名艺术家的音乐风格视频。

当视频未获得许可时,未发生此问题。我知道有些艺术家可以标记他们的视频不可共享,并且可以允许/阻止域等。但是,我们知道这些都与我们无关。

相反,问题是推荐人政策。我怀疑谷歌/Youtube的授权内容建立了一个信任模型,而这种信任模型的一部分需要一个强大的Referer政策。

我们通过将引用策略 MDN 引用策略设置为更强的引用策略来解决我们的问题。

如果我们使用默认值:

"降级时无引荐来源">

播放时的视频会显示"视频不可用"。

我们改为:

原点-当-交叉源

视频播放成功

如果您无法在 MrBean 提供的 JSFiddle 链接上看到视频,则您的设备有问题,而不是嵌入本身。

如果是这种情况,下一步是隔离问题。

你试过吗:

  1. 不同的浏览器。(可能是您的某个扩展或缓存有问题。

  2. 网络上的另一台计算机。(可能是您的安全设置或防火墙过滤器有问题。

  3. 不同网络上的另一台计算机。(这将模拟大多数用户,这些用户报告说能够正确观看视频。

此视频应该可以播放,但您可能无权查看或显示它。

我在文档标题中有这一行,我删除了它并开始工作

<meta name='referrer' content='no-referrer'/>

最新更新