Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

155
Vistas
Inyecte javascript desde el script de contenido con una extensión de Chrome v3

Estoy migrando mi extensión de V2 a V3. Ahora todo funciona bien excepto por una cosa. En mi versión V2 hice

 const actualCode = '(' + function () { 'console.log("demo");' } + `)();`; const script = document.createElement('script'); script.textContent = actualCode; (document.head || document.documentElement).appendChild(script); script.remove();

Tenga en cuenta que console.log("demo") es una simplificación de lo que necesito inyectar :)

Necesito inyectar algo de javascript para que mi chrome-extension-magic tenga lugar.

Ahora, en V3 esto ya no funciona. Recibo el siguiente error en mi devtools-console

 content.js:23114 Refused to execute inline script because it violates the following ContentSecurity Policy directive: "script-src 'self'". Either the 'unsafe-inline' keyword, a hash ('sha256-tN52+5...6d2I/Szq8='), or a nonce ('nonce-...') is required to enable inline execution.

En la guía de migración noté esta sección.

 "content_security_policy": { "extension_pages": "...", "sandbox": "..." }

pero no hay mucha descripción allí, así que esto es mágico para mí. Así que espero que alguien me pueda ayudar con esto.

about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Consulte Usar un script de contenido para acceder a las funciones y variables de contexto de la página

Dado content scripts se ejecutan en un entorno de "mundo aislado", no podemos realizar algunas operaciones dom especiales en content_script js.

Este ejemplo le mostrará cómo inyectar inject.js en la página web antes de que comience el documento :

 // document_start.js var s = document.createElement('script'); s.src = chrome.runtime.getURL('inject.js'); s.onload = function() { this.remove(); }; (document.head || document.documentElement).appendChild(s);

ejemplo de manifest.json para ManifestV3

 "content_scripts": [ { "matches": ["<all_urls>"], "js": ["document_start.js"], "run_at": "document_start" //default document end } ] "web_accessible_resources": [{ "resources": ["inject.js"], "matches": ["<all_urls>"] }]
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda