Estoy creando extensiones de Google Chrome que deberían descargar archivos mp4 que se detectan en la página del sitio web en la que estoy, pero no puedo ejecutar mi función que está en mis etiquetas de script y no sé cómo solucionarlo. Recibí 2 errores, ambos relacionados con el CSP:
Se negó a ejecutar el script en línea porque viola la siguiente directiva de Política de seguridad de contenido: "script-src 'self'". Se requiere la palabra clave 'unsafe-inline', un hash ('sha256-F7oiGRIrds+2B67r3VVNsXI1RXzWT/pYKihh3o3t4mg=') o un nonce ('nonce-...') para habilitar la ejecución en línea.
y
Se negó a ejecutar el controlador de eventos en línea porque viola la siguiente directiva de Política de seguridad de contenido: "script-src 'self'". Se requiere la palabra clave 'unsafe-inline', un hash ('sha256-...') o un nonce ('nonce-...') para habilitar la ejecución en línea. Tenga en cuenta que los hashes no se aplican a los controladores de eventos, atributos de estilo y javascript: navegaciones a menos que esté presente la palabra clave 'unsafe-hashes'.
Aquí está mi código:
<header> <div class="d_button"> <a id="download_b" href="files" download="video.mp4">Download</a> </div> </header> <script> document.getElementById("download_b").addEventListener("click", search4vid); function search4vid(); const types = /\.(|mp4)/ const files = performance.getEntriesByType('resource').filter(resource => resource.name.match(types) !== null).reduce((accum, value) => { accum[value.name.split('/')[value.name.split('/').length - 1]] = value.name return accum}, {}) document.getElementById('download_b').setAttribute("href",link); document.getElementById('download_b').innerHTML = link; </script> Mi código javascript seguramente está mal, pero no puedo probarlo. La función de javascript debe activarse al hacer clic en un texto html y reemplazar un href="" por los types de variables JS para luego descargarlo. Puede ser un poco confuso y también lo es para mí, pero estoy haciendo mi mejor esfuerzo. Gracias