Как обрабатывать ошибки DRM (HTML)
[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. В случае разработки приложений для Windows 10 см. раздел последняя документация]
Приложения среды выполнения Windows могут разрешать воспроизведение мультимедиа, защищенного с помощью DRM (управление цифровыми правами), используя класс MediaProtectionManager. Интерфейс MediaError расширен, и в него теперь входит атрибут msExtendedCode, который обеспечивает разработчикам обратную связь в ходе реализации.
Приведенный ниже код показывает, как использовать класс MediaProtectionManager с атрибутом msExtendedCode.
function DRMErrors() {
var myVideo = document.getElementById("videoTag1");
var cpm = new Windows.Media.Protection.MediaProtectionManager();
cpm.addEventListener('servicerequested', EnableContent, false);
myVideo.msSetMediaProtectionManager(cpm);
myVideo.addEventListener('error', function onError() {
var error = myVideo.error.msExtendedCode;
// handle error.
}, false);
myVideo.addEventListener('canplay', function onCanplay() {
myVideo.play();
}, false);
myVideo.src = "https://www.contoso.com/test.wmv";
}
function EnableContent(e) {
if (typeof (e.request) != 'undefined') {
var req = e.request;
var system = req.protectionSystem;
var type = req.type;
// take necessary actions Based on the system and type;
}
if (typeof (e.completion) != 'undefined') { // requested action completed
var comp = e.completion;
comp.complete(true);
}
}