Heim > Artikel > Web-Frontend > Was ist der Grund für domänenübergreifendes JavaScript?
Der Grund, warum JavaScript domänenübergreifend ist, ist: Aufgrund der Richtlinieneinschränkung des Browsers mit gleichem Ursprung können die js des aktuellen Domänennamens nur die Fensterattribute in derselben Domäne lesen, sodass domänenübergreifend auftritt. Die Same-Origin-Richtlinie bedeutet, dass Browser JS-Interaktionen zwischen verschiedenen Domänen verbieten, um die Sicherheit von Benutzerinformationen zu gewährleisten und zu verhindern, dass bösartige Websites Daten stehlen.
Die Betriebsumgebung dieses Tutorials: Windows 10-System, JavaScript-Version 1.8.5, Dell G3-Computer.
Das domänenübergreifende Problem wird durch die Same-Origin-Richtlinie des Browsers eingeschränkt. Die js des aktuellen Domänennamens können nur die Fensterattribute in derselben Domäne lesen.
Aufgrund der Same-Origin-Richtlinieneinschränkungen des Browsers. Die Same-Origin-Richtlinie ist eine Konvention. Sie ist die wichtigste und grundlegendste Sicherheitsfunktion des Browsers. Wenn die Same-Origin-Richtlinie fehlt, können die normalen Funktionen des Browsers beeinträchtigt sein. Man kann sagen, dass das Web auf der Grundlage der Same-Origin-Richtlinie aufgebaut ist. Der Browser ist lediglich eine Implementierung der Same-Origin-Richtlinie. Die Same-Origin-Richtlinie verhindert, dass JavaScript-Skripte einer Domäne mit Inhalten einer anderen Domäne interagieren. Der sogenannte gleiche Ursprung (also in der gleichen Domäne) bedeutet, dass die beiden Seiten das gleiche Protokoll, den gleichen Host und die gleiche Portnummer haben.
Einfach ausgedrückt bedeutet die Same-Origin-Richtlinie, dass der Browser JS-Interaktionen zwischen verschiedenen Domänen verbietet, um die Sicherheit von Benutzerinformationen zu gewährleisten und zu verhindern, dass böswillige Websites Daten stehlen. Solange einer der Domänennamen, Protokolle und Ports unterschiedlich ist, wird bei Browsern die Same-Origin-Richtlinie ausgelöst, wodurch die folgenden Interaktionen zwischen ihnen eingeschränkt werden:
1. Cookies, LocalStorage und IndexDB können nicht gelesen werden
2. DOM kann nicht gelesen werden.
3.AJAX-Anfrage kann nicht gesendet werden.
Die strenge Definition von domänenübergreifend lautet: Solange Protokoll, Domänenname und Port unterschiedlich sind, wird es als domänenübergreifend betrachtet.
Domänenübergreifende Lösung
JSONP: Sie müssen dataType: „jsonp“ zur Anforderungsmethode hinzufügen. // Das Datenformat ist auf jsonp eingestellt, jsonp: „callback“, // Der Name des Überprüfungsparameters generiert durch Jquery
1, dataType, dieser Parameter muss auf jsonp gesetzt werden
2, jsonp, der Wert dieses Parameters muss mit der Serverseite vereinbart werden
nginx Reverse Proxy
webpack Reverse Proxy konfigurieren: direkt verwenden Scaffolding devServer zum Konfigurieren des Reverse-Proxy. Lösen Sie domänenübergreifende Probleme im Entwicklungsprozess um Daten zurückzugeben und sie dann an das Front-End zurückzugeben. Es besteht keine domänenübergreifende Verbindung Tag, um domänenübergreifende Anforderungen zu erreichen, und der Hintergrund gibt eine Methode an Sie zurück. Sie können diese Methode verwenden. Holen Sie sich die gewünschten Daten
jsonp-Prinzip Das Front-End definiert eine Methode und übergibt sie an Back-End über das src-Attribut. Nachdem das Back-End die Methode erhalten hat, übergibt es sie an das Front-End. Das Front-End ruft sie als Methode auf. JSONP ist hauptsächlich eine Kapselung request Methode zum Hinzufügen eines Rückrufs. Dieser Rückruf wird vom Front-End und Back-End vereinbart
Verwandte Empfehlungen:
Javascript-Lern-TutorialDas obige ist der detaillierte Inhalt vonWas ist der Grund für domänenübergreifendes JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!