有没有一种方法可以防止在HTML5视频播放器中下载视频

时间:2020-05-05 10:45:07

标签: video download html5-video

我想防止通过右键单击,开发人员工具和浏览器扩展程序下载视频。有没有办法做到这一点?

许多网站已经做到了,但是如何?

2 个答案:

答案 0 :(得分:1)

您可以在任何HTML5元素上禁用“上下文菜单”,但是您应该意识到,如果某人确实要下载您的视频,这是一个相当简单的障碍。

有关禁用上下文菜单的信息,请参见:https://developer.mozilla.org/en-US/docs/Web/API/Element/contextmenu_event

为视频修改的示例如下:

noContext = document.getElementById('noContextVideo');

noContext.addEventListener('contextmenu', e => {
  e.preventDefault();
});
<p>The context menu has been disabled on this video.</p>

<video id="noContextVideo" width="320" autoplay controls height="240">
  <source src="http://clips.vorwaerts-gmbh.de/VfE_html5.mp4"
            type="video/mp4">
</video>

<p>But it has not been disabled on this one.</p>

<video width="320" autoplay controls height="240">
  <source src="http://clips.vorwaerts-gmbh.de/VfE_html5.mp4"
            type="video/mp4">
</video>

最终,如果您的浏览器能够播放视频,则有人可以使用一些基本编程或常用工具来下载视频。

解决此问题的常用方法是以某种方式私下或使用DRM系统对视频进行加密并安全地共享加密密钥。

即使如此,您仍需要评估要保护的内容-例如,如果这是公司内部带有商业“秘密”内容的视频,则将相机对准屏幕将以足够的质量复制它,以轻松地“泄漏”这些秘密。

答案 1 :(得分:0)

正如第一个海报所指出的那样-很难阻止人们下载您的视频。您还可以关闭HTML5中的“下载”按钮:

controlslist =“ nodownload” https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/controlsList