Tengo videos alojados en el CDN. Pero el archivo de video ha sido modificado. Entonces el video no puede reproducirse directamente.
En mi aplicación, puedo revertir la modificación del video antes de reproducirlo.
Pero, ¿cómo puedo hacerlo en el navegador? Hay un gancho ajax, y lo probé, no puede enganchar la transmisión midia.
El encabezado del archivo de video está encriptado al modificar el encabezado a propósito.
En primer lugar, si está tratando de cifrar un video, esto no le brinda mucha protección. Recomiendo usar algún tipo de DRM con extensiones de medios cifrados . Esto asegurará que no se pueda acceder a su video sin un esfuerzo adicional. Nada es infalible, pero esto es al menos mucho mejor.
Web ¿cómo enganchar la solicitud de medios y modificar la respuesta de la solicitud de medios?
Puede usar un Service Worker para manejar la solicitud/respuesta de cualquier cosa, incluidos los elementos multimedia.
Básicamente, un Service Worker actúa como un proxy, interceptando las solicitudes. Si lo desea, puede manejar la solicitud por sí mismo. Normalmente, esto se usa para hacer algo especial con el almacenamiento en caché, pero puede usar este mismo método para modificar los datos de respuesta como mejor le parezca. En el nivel más básico, su trabajador de servicio hará algo como esto:
self.addEventListener('fetch', (event) => { event.respondWith( // Your modified data in a Response object here ); });
Sin embargo, hay bastante que necesita implementar para comenzar. Puedes encontrar un tutorial completo aquí:
https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/Using_Service_Workers
También tenga en cuenta, tenga en cuenta los encabezados de rango en las solicitudes. ¡Estos son comunes con los datos de medios, y deberá manejarlos en sus scripts de Service Worker!