Inhaltsverzeichnis
Was ist WebSocket?
WebSocket in HTML5" >WebSocket in HTML5
Kompatibilität
Vorteile
Praktische Anwendung
Referenz
Heim Web-Frontend H5-Tutorial Was ist WebSocket? Vertiefendes Verständnis von WebSocket in HTML5

Was ist WebSocket? Vertiefendes Verständnis von WebSocket in HTML5

May 08, 2017 pm 01:46 PM

Was ist WebSocket?

WebSocketDer Server und der Client können in beide Richtungen kommunizieren und eine domänenübergreifende Kommunikation ermöglichen. Unterstützt durch den HTTP/1.1-Mechanismus von Upgrade, Kommunikation über ws (unverschlüsselt) oder wss (verschlüsselt) Protokolle

WebSocket WebSocket(
  in DOMString url,
  in optional DOMString protocols
);

WebSocket WebSocket(
  in DOMString url,
  in optional DOMString[] protocols
);
Nach dem Login kopieren

WebSocket in HTML5

HTML5Konzentrieren Sie sich nur auf den Kunden<a href="http://www.php.cn/js/js-weixinapp-api.html" target="_blank">API<code><a href="http://www.php.cn/js/js-weixinapp-api.html" target="_blank">API</a> und auf der Serverseite implementiert jede Sprache das Ereignis

// 创建一个Socket实例
var socket = new WebSocket(&#39;ws://localhost:8080&#39;);
// 打开Socket 
socket.onopen = function(event){
  // 发送一个初始化消息
  socket.send(&#39;I am the client and I\&#39;m listening!&#39;);
  // 监听消息
  socket.onmessage = function(event){
    console.log(&#39;Client received a message&#39;,event);
  };
  // 监听Socket的关闭
  socket.onclose = function(event){
    console.log(&#39;Client notified socket has closed&#39;,event);
  };
  // 关闭Socket.... 
  //socket.close()
};
Nach dem Login kopieren


onclose onerror onmessage onopen

Attribute

  • readyState: CONNECTING 0 OPEN 1 CLOSING 2 CLOSED 3

  • binaryType: String Blob <a href="http://www.php.cn/wiki/58.html" target="_blank"> Array<code><a href="http://www.php.cn/wiki/58.html" target="_blank">Array</a>BufferPuffer

Kompatibilität

Methode 1:
Wenn der Client WebSocket nicht unterstützt, dann Sie kann mehrere Kandidatenoptionen verwenden Flash Socket AJAX long-polling AJAX multipart streaming IFrame <a href="http://www.php.cn/wiki/1488.html" target="_blank">JSON <code><a href="http://www.php.cn/wiki/1488.html" target="_blank">JSON</a>P pollingP-Abfrage

Methode 2
Verwenden Sie Socket.io, um die Unterschiede auszugleichen. Diese Bibliothek kann den Browser automatisch abfragen, wenn der Browser WebSocket nicht unterstützt Verwenden Sie zum Herstellen der Verbindung die vom Browser unterstützte Push-Nachrichtenmethode. Die Bibliothek erkennt auch, ob die Verbindung unterbrochen wurde, und stellt automatisch die Verbindung wieder her, wenn sie unterbrochen wird.

// 创建Socket.IO实例,建立连接
var socket= new io.Socket(&#39;localhost&#39;,{
  port: 8080,
});
socket.connect();
// 添加一个连接监听器
socket.on(&#39;connect&#39;,function(){
  console.log(&#39;Client has connected to the server!&#39;);
});
// 添加一个连接监听器
socket.on(&#39;message&#39;,function(data){
  console.log(&#39;Received a message from the server!&#39;,data);
});
// 添加一个关闭连接的监听器
socket.on(&#39;disconnect&#39;,function(){
  console.log(&#39;The client has disconnected!&#39;);
});
// 通过Socket发送一条消息到服务器
function sendMessageToServer(message){
  socket.send(message);
}
Nach dem Login kopieren

Vorteile

  • Zwei-Wege-Kommunikation in Echtzeit

  • Die native Unterstützung des Browsers ist gut (Kompatibilität kann genutzt werden). Bibliotheken von Drittanbietern (Sehr einfach zu lösen)

  • Unterstützung benutzerdefinierter Protokolle

Praktische Anwendung

  • Chatroom

  • Server-Nachrichten-Push

  • Front-End- und Back-End-Echtzeitsystem

Referenz

  • Websocket | ]

  • 1.
  • Kostenloses h5-Online-Video-Tutorial

  • 2.
HTML5-Vollversionshandbuch

3 .cn Original-HTML5-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist WebSocket? Vertiefendes Verständnis von WebSocket in HTML5. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Tabellenrahmen in HTML Tabellenrahmen in HTML Sep 04, 2024 pm 04:49 PM

Anleitung zum Tabellenrahmen in HTML. Hier besprechen wir verschiedene Möglichkeiten zum Definieren von Tabellenrändern anhand von Beispielen für den Tabellenrand in HTML.

Verschachtelte Tabelle in HTML Verschachtelte Tabelle in HTML Sep 04, 2024 pm 04:49 PM

Dies ist eine Anleitung für verschachtelte Tabellen in HTML. Hier diskutieren wir anhand der entsprechenden Beispiele, wie man eine Tabelle innerhalb der Tabelle erstellt.

HTML-Rand links HTML-Rand links Sep 04, 2024 pm 04:48 PM

Anleitung zum HTML-Rand links. Hier besprechen wir einen kurzen Überblick über HTML margin-left und seine Beispiele sowie seine Code-Implementierung.

HTML-Tabellenlayout HTML-Tabellenlayout Sep 04, 2024 pm 04:54 PM

Leitfaden zum HTML-Tabellenlayout. Hier besprechen wir die Werte des HTML-Tabellenlayouts zusammen mit den Beispielen und Ausgaben im Detail.

HTML-Eingabeplatzhalter HTML-Eingabeplatzhalter Sep 04, 2024 pm 04:54 PM

Leitfaden für HTML-Eingabeplatzhalter. Hier besprechen wir die Beispiele für HTML-Eingabeplatzhalter zusammen mit den Codes und Ausgaben.

Text in HTML verschieben Text in HTML verschieben Sep 04, 2024 pm 04:45 PM

Anleitung zum Verschieben von Text in HTML. Hier besprechen wir eine Einführung, wie Marquee-Tags funktionieren, mit Syntax und Beispielen für die Implementierung.

HTML-geordnete Liste HTML-geordnete Liste Sep 04, 2024 pm 04:43 PM

Leitfaden zur HTML-geordneten Liste. Hier besprechen wir auch die Einführung von HTML-geordneten Listen und Typen sowie deren Beispiele

HTML-Onclick-Button HTML-Onclick-Button Sep 04, 2024 pm 04:49 PM

Anleitung zum HTML-OnClick-Button. Hier diskutieren wir deren Einführung, Funktionsweise, Beispiele und Onclick-Events in verschiedenen Veranstaltungen.

See all articles