Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

163
Visualizações
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 Respostas
Responde à pergunta

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda