J'ai remarqué que Netflix utilise une méthode d'empêchement des utilisateurs d'enregistrer ou même de prendre des images de capture d'écran fixes de la lecture vidéo dans leur application basée sur le navigateur.
Si vous regardez une vidéo sur Netflix (dans mes vitres Windows 10 et Chrome), la vidéo se tournera vers un écran noir si vous commencez à enregistrer ou à enregistrer une capture d'écran.
Quelle technologie est en jeu ici. Existe-t-il une API Windows/chrome pour raconter du contenu sur l'écran de masquer si une tentative de capture d'écran est détectée?
Est-il possible pour un développeur Web d'ajouter cette fonctionnalité à leurs produits?
Je ne suis pas sûr de savoir comment Netflix gère cela, mais je suis capable de le faire sur ma machine à Windows!
Vous pouvez donc configurer un auditeur d'événement pour la touche Windows et apporter des modifications chaque fois que la touche Windows est maintenue puisque la prise d'écran peut être effectuée à l'aide de la touche écran Imprimer Windows +).
<div id="changes"></div>
<script>
window.addEventListener("keydown", function(e) {
if (e.keyCode == 91) {
document.getElementById("changes").innerHTML = "Attempting to take a screen shot!";
}
});
window.addEventListener("keyup", function(e) {
if (e.keyCode == 91) {
document.getElementById("changes").innerHTML = "Screenshot taken!";
}
})
</script>
Maintenant, en prenant une capture d'écran, vous pouvez voir des modifications dans le DOM pendant et après la prise de la capture d'écran.
Ceci est détecté purement à l'aide de la touche Press, de sorte que toutes les tentatives de capture d'écran basée sur des logiciels soit infructueuse à l'aide de cette méthode!