Heim  >  Artikel  >  Web-Frontend  >  Ausführliche Erläuterung der domänenübergreifenden Problemlösung von WebSocket

Ausführliche Erläuterung der domänenübergreifenden Problemlösung von WebSocket

青灯夜游
青灯夜游nach vorne
2018-10-09 16:21:523113Durchsuche

Dieser Artikel stellt hauptsächlich relevante Informationen vor, die detailliert erklären, wie man WebSocket-übergreifende Probleme löst. Ich hoffe, dass er für Sie hilfreich ist.

Das WebSocket-Protokoll ist ein neues Protokoll von HTML5. Es realisiert eine Vollduplex-Kommunikation zwischen dem Browser und dem Server und ermöglicht eine domänenübergreifende Kommunikation. Es ist eine gute Implementierung der Server-Push-Technologie. Wir verwenden Socket.io, das die webSocket-Schnittstelle sehr gut kapselt, eine einfachere und flexiblere Schnittstelle bietet und außerdem Abwärtskompatibilität für Browser bietet, die webSocket nicht unterstützen.

Ich stoße in meinem Projekt auf ein domänenübergreifendes JavaScript-Problem, und die Eltern-Kind-Seiten sind domänenübergreifend. Was soll ich tun?

Um sicherzustellen, dass die Kommunikation zwischen den übergeordneten und untergeordneten Seiten im Projekt Punkt-zu-Punkt erfolgt, muss auf der Serverseite eine WebSocket-Korrespondenz zwischen den übergeordneten und untergeordneten Seiten hergestellt werden Von der übergeordneten Seite gesendete Nachrichten werden nur von der untergeordneten Seite empfangen, und die Nachrichten der untergeordneten Seite werden nur von der übergeordneten Seite empfangen. Nach dem Empfang haben wir die folgenden Arbeiten durchgeführt, um strikt sicherzustellen, dass

Die WebSocket-Kommunikation erfolgt Punkt-zu-Punkt:

Erstellen Sie zunächst die URL des WebSocket-Links plus Zeit. Die erste besteht darin, sicherzustellen, dass die Kommunikationssitzung eindeutig ist

Die zweite besteht darin, die Eins-zu-eins-WebSocket-Korrespondenz zwischen den übergeordneten und untergeordneten Seiten auf der Serverseite sicherzustellen. Wenn der WebSocket der übergeordneten und untergeordneten Seiten geöffnet wird, sendet er eine Nachricht an den Server, um die entsprechende Beziehung zwischen Sensions zu registrieren und herzustellen. Dann können die übergeordneten und untergeordneten Seiten über das von beiden Parteien eingeschränkte Kommunikationsprotokoll kommunizieren.

Hier schreiben wir eine Demo:

var p = document.getElementsByTagName(‘p’)[0];

var io = io.connect(‘http://127.0.0.1:3001’);

io.on(‘data’,function(data){

alert(‘2S后改变数据’);

p.innerHTML = data

});

Serverseite

var io = require(‘socket.io’)(server);

io.on(‘connection’,function(client){

client.emit(‘data’,’hello WebSocket from 3001.’);

});

Das war's für heute. Ich hoffe, dass es für alle hilfreich sein wird Ich möchte nicht zu viel Zeit damit verbringen. Für WebSocket können Sie versuchen, WebSocket eines Drittanbieters zu verwenden, ähnlich wie GoEasy Aurora.

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird. Weitere verwandte Tutorials finden Sie unter Html5-Video-Tutorial!

Verwandte Empfehlungen:

PHP-Video-Tutorial zum Gemeinwohltraining

HTML5-Grafik-Tutorial

HTML5 Online-Handbuch

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der domänenübergreifenden Problemlösung von WebSocket. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen

In Verbindung stehende Artikel

Mehr sehen