Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 4712|Antwort: 2

[HTML/HTML5] HTML5 PostMessage-Cross-Window-Kommunikation

[Link kopieren]
Veröffentlicht am 30.07.2022 22:07:04 | | | |
PostMessage ist eine neue Cross-Origin-Kommunikations-API, die in html5 eingeführt wurde und es ermöglicht, bidirektional mit der Hauptseite und jeder Frame-Class-Seite oder einer von window.open geöffneten Seite zu kommunizieren. Sein allgemeiner Betriebsablauf ist wie folgt:



JS bestimmt, ob die aktuelle Seite ein iframe oder ein Popup-Fenster ist
https://www.itsvse.com/thread-10342-1-1.html


die postMessage(data,origin)-Methode akzeptiert zwei Parameter:

(1) Daten: Die zu übergebenden Daten; die HTML5-Spezifikation erwähnt, dass der Parameter jede grundlegende JavaScript-Art oder ein reproduzierbares Objekt sein kann, aber nicht alle Browser haben dies getan, einige Browser können nur String-Parameter verarbeiten, daher müssen wir die Methode JSON.stringify() verwenden, um die Objektparameter beim Weitergeben der Parameter zu serialisieren und auf json2.js in der niedrigeren IE-Version zu verweisen, um ähnliche Effekte zu erzielen.

(2) Ursprung: String-Parameter, gib die Quelle des Zielfensters an, Protokoll + Host + Portnummer [+URL], die URL wird ignoriert, daher kann sie nicht geschrieben werden, dieser Parameter dient Sicherheitsgründen, die postMessage()-Methode übergibt die Nachricht nur an das angegebene Fenster, natürlich, wenn du möchtest, kannst du den Parameter auch auf "*" setzen, sodass er an jedes beliebige Fenster weitergegeben werden kann, wenn du denselben Ursprung wie das aktuelle Fenster angeben möchtest, wird er auf "/" gesetzt;


Nachrichten und empfangen Sie Nachrichten selbst

Der Code lautet wie folgt:



Das Elternfenster sendet eine Nachricht an das Kindfenster, und das Kindfenster empfängt die Nachricht

Der Code lautet wie folgt:




Das Kindfenster sendet eine Nachricht an das Elternfenster, und das Elternfenster empfängt die Nachricht

Der Code lautet wie folgt:



Zusätzlich ist ein einfacher Listener/Client-Modus für domänenübergreifende Nachrichten an folgende Adresse angeschlossen:Der Hyperlink-Login ist sichtbar.

(Ende)




Vorhergehend:JS bestimmt, ob die aktuelle Seite ein iframe oder ein Popup-Fenster ist
Nächster:Docker modifiziert und beschränkt Container-CPU, Speicher und andere Ressourcen
Veröffentlicht am 30.07.2022 22:46:07 |
Lerne zu lernen...
 Vermieter| Veröffentlicht am 18.02.2023 21:25:31 |
Beispiel nach dem Roboter bei der Browser-Fenster-Kommunikation
https://www.itsvse.com/thread-10428-1-1.html
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com