„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum schlagen meine Popup-Klickereignisse für die Chrome-Erweiterung aufgrund eines Verstoßes gegen die Inhaltssicherheitsrichtlinie fehl?

Warum schlagen meine Popup-Klickereignisse für die Chrome-Erweiterung aufgrund eines Verstoßes gegen die Inhaltssicherheitsrichtlinie fehl?

Veröffentlicht am 24.11.2024
Durchsuche:912

Why Are My Chrome Extension Popup Click Events Failing Due to a Content Security Policy Violation?

Erweiterungs-Popup-Klickereignisse fehlgeschlagen: Verstoß gegen die Inhaltssicherheitsrichtlinie wird behoben

Fehlerbeschreibung

Klicken Sie in einer Chrome-Erweiterung auf Ereignisse sowohl auf dem Erweiterungssymbol als auch auf Eine Schaltfläche auf der Popup-Seite erzeugt nicht die erwartete Reaktion beim Erhöhen einer JavaScript-Variablen.

Inspizieren des Stammverzeichnisses Ursache

Um das Problem zu beheben, überprüfen Sie die Popup-Seite und die Konsolenprotokolle. Die Fehlermeldung weist wahrscheinlich auf einen Verstoß gegen die Content Security Policy (CSP) hin:

Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self' chrome-extension-resource:".

Kompromittierte CSP-Konformität

Inline-Skripte innerhalb der HTML-Seite verstoßen gegen den Standard-CSP. Inline-JavaScript ist gemäß dieser Richtlinie nicht zulässig.

Lösung: JavaScript isolieren

Um das Problem zu beheben, entfernen Sie das gesamte Inline-JavaScript aus der HTML-Datei und platzieren Sie es in einer separaten JavaScript-Datei.

Überarbeitete Codestruktur

hello.html (Popup Seite)





popup.js

var a = 0;
function count() {
  a  ;
  document.getElementById('demo').textContent = a;
}
document.getElementById('do-count').onclick = count;

Notes

  • Ersetzen Sie innerHTML durch textContent, wenn Sie Text ändern, um potenzielle XSS-Schwachstellen zu verringern.
  • Diese Lösung gewährleistet die Einhaltung von CSP und ermöglicht die ordnungsgemäße Skriptausführung und Klickereignisbehandlung.
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3