Есть ли способ предотвратить загрузку видео в видеоплеере HTML5 - PullRequest
0 голосов
/ 05 мая 2020

Я хочу предотвратить загрузку видео с помощью щелчка правой кнопкой мыши, инструментов разработчика и расширений браузера. Есть ли способ добиться этого?

Многие веб-сайты уже делают это, но как?

Ответы [ 2 ]

1 голос
/ 05 мая 2020

Вы можете отключить «контекстное меню» на любом элементе 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>

В конечном итоге, если ваш браузер может воспроизводить видео, то кто-то может загрузить его, используя некоторые базовые c программные или общедоступные инструменты.

Обычный подход к решению этой проблемы состоит в том, чтобы зашифровать видео и безопасно поделиться ключом шифрования либо в частном порядке, либо с использованием системы DRM.

Даже в этом случае вам необходимо оценить контент, который вы пытаетесь защитить - например, если это внутреннее видео компании с коммерческими «секретами», наведение камеры на экран позволит скопировать его с достаточным качеством, чтобы легко «утечь» эти секреты.

0 голосов
/ 11 мая 2020

Как было отмечено на первом плакате - сложно удержать людей от загрузки вашего видео. Вы также можете отключить кнопку «скачать» в HTML5:

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...