Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

183
Views
Extensión de Chrome de Gmail "Se negó a cargar el script porque infringe la siguiente directiva de Política de seguridad de contenido: "script-src 'self'". Manifiesto v3

Me he metido en la madriguera del conejo de StackOverflow y encontré preguntas similares que no funcionan o parecen inseguras, así que aquí hay una más.

Mi meta

Quiero crear una extensión de Google Chrome que funcione con Gmail. Cuando alguien redacta un nuevo correo electrónico, agrega una pequeña casilla de verificación al generador de correo electrónico. Cuando alguien marca esta casilla, solo quiero que la consola registre "marcado". Se parece a esto

Metodología y problema

La forma más fácil de hacer esto es simplemente crear un atributo para "onchange" y llamar a una función. Como esto:

 mauticCheckbox.setAttribute('onchange', 'test()')

Pero esto genera un error: "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 'report-sample' 'nonce-isArkHmhi5JlS1U0S0z2uA' 'unsafe-inline' 'strict-dynamic' https: http: 'evaluación insegura'"."

Leí en otras preguntas similares que puede deshabilitar el 'inseguro en línea', pero que es menos seguro. Esto podría ser un último recurso, pero prefiero no hacerlo.

Así que sigo investigando y la otra forma de hacer esto parece ser agregar JavaScript en la etiqueta principal. No tengo un archivo HTML para mi código ya que lo estoy agregando a la ventana de redacción de Gmail, por lo que mi código era algo como esto:

 window.onload=function() { addJavaScriptHead() } function addJavaScriptHead() { let head = document.getElementsByTagName('head')[0]; let script = document.createElement('script'); script.type = 'module'; script.onload = function() { listenForClick(); // My function from background.js } script.src = 'background.js'; head.appendChild(script); }

Pero, por desgracia, esto se encuentra con un mensaje de error similar (pero diferente): "Se negó a cargar el script 'https://mail.google.com/mail/u/0/background.js' porque viola la siguiente Política de seguridad de contenido directiva: "script-src 'self'"."

¿Cómo puedo llamar a una función cuando este elemento se cambia de no hacer clic a hacer clic y viceversa?

Gracias por adelantado :)

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

En primer lugar, debe configurar su archivo en web_accessible_resources en manifest.json

 "web_accessible_resources" : { "resources": ["path/to/background.js"], "matches": ["<all_urls"] }

Luego, cambie el script src a:

 script.src = chrome.runtime.getURL("path/to/background.js")
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!