Heim >Web-Frontend >js-Tutorial >Wie löse ich „SecurityError: Ein Frame mit Ursprung hat den Zugriff auf einen Cross-Origin-Frame blockiert'?
Same-Origin-Richtlinie , eine wichtige Sicherheitsmaßnahme, verhindert, dass Skripte auf Frames unterschiedlicher Herkunft (Protokoll, Hostname oder Port) zugreifen. Dieser Fehler tritt auf, wenn versucht wird, auf Elemente innerhalb eines Iframes mit nicht übereinstimmendem Ursprung zuzugreifen.
Der direkte JavaScript-Zugriff ist durch die Same-Origin-Richtlinie verboten. Wenn Sie jedoch beide Seiten steuern, sollten Sie window.postMessage für die domänenübergreifende Kommunikation in Betracht ziehen:
Hauptseite:
frame.contentWindow.postMessage(data, 'https://second-site.example');
Iframe Seite:
window.addEventListener('message', event => { if (event.origin === 'https://first-site.example') console.log(event.data); });
In Ausnahmefällen müssen Sie die Richtlinie möglicherweise deaktivieren. Aus Sicherheitsgründen wird jedoch dringend davon abgeraten.
Für einige Browser finden Sie Anweisungen zum Deaktivieren hier:
Denken Sie daran, dass die Deaktivierung der Same-Origin-Richtlinie Auswirkungen hat nur Ihr Browser und birgt erhebliche Sicherheitsrisiken.
Das obige ist der detaillierte Inhalt vonWie löse ich „SecurityError: Ein Frame mit Ursprung hat den Zugriff auf einen Cross-Origin-Frame blockiert'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!