He estado tratando de hacer una extensión de Chrome que use el enlace CDN de Sheet.js para analizar algunos datos de Excel. Pero aparece un error relacionado con la 'Política de seguridad de contenido'.
Aunque configuré 'script-src-elem' explícitamente en mi manifest.json , pero sigo recibiendo el siguiente error:
Analyser.js:14 Se negó a cargar el script 'https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.13.5/xlsx.full.min.js' porque infringe la siguiente directiva de Política de seguridad de contenido: " script-src 'uno mismo'". Tenga en cuenta que 'script-src-elem' no se configuró explícitamente, por lo que 'script-src' se usa como respaldo.
Analyser.js:19 Se negó a cargar el script 'https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.13.5/jszip.js' porque infringe la siguiente directiva de Política de seguridad de contenido: "script-src ' uno mismo'". Tenga en cuenta que 'script-src-elem' no se configuró explícitamente, por lo que 'script-src' se usa como alternativa.
También intenté hacer un local de estos scripts y los cargué usando "web_accessible_resource", esa vez los scripts se agregaron al encabezado sin ningún error anterior. Pero luego descubrí que esos scripts ni siquiera funcionaban.
Manifiesto.jsom
{ "name": "Extension", "description": "Trying to Learn", "version": "1.0", "manifest_version": 3, "permissions": [ "storage", "activeTab", "scripting" ], "content_scripts": [ { "matches": [ "http://www.example.com/*" ], "js": [ "Analyser.js" ] } ], "content_security_policy": { "extension_pages": "script-src-elem 'self' 'unsafe-inline' https://cdnjs.cloudflare.com; script-src 'self'; object-src 'self'" } }analizador.js
let cdnxlsx_1 = document.createElement('script'); cdnxlsx_1.src = 'https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.13.5/xlsx.full.min.js'; cdnxlsx_1.type = 'text/javascript'; document.head.appendChild(cdnxlsx_1); let cdnxlsx_2 = document.createElement('script'); cdnxlsx_2.src = 'https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.13.5/jszip.js'; cdnxlsx_2.type = 'text/javascript'; document.head.appendChild(cdnxlsx_2); . . . . .