Maison interface Web js tutoriel WebSocket et JavaScript : créez un système efficace d'interaction de données en temps réel

WebSocket et JavaScript : créez un système efficace d'interaction de données en temps réel

Dec 17, 2023 pm 09:09 PM
javascript websocket 实时数据交互

WebSocket et JavaScript : créez un système efficace dinteraction de données en temps réel

WebSocket et JavaScript : Créer un système efficace d'interaction de données en temps réel

Introduction :
Dans les applications Web modernes, l'interaction de données en temps réel devient de plus en plus importante. Le modèle de requête-réponse HTTP traditionnel présente certaines limites. Par exemple, chaque requête nécessite le rétablissement de la connexion, le serveur ne peut qu'envoyer activement des données et le client ne peut pas obtenir activement les dernières mises à jour. L'émergence de la technologie WebSocket comble ces lacunes et offre aux développeurs une méthode d'interaction de données en temps réel, bidirectionnelle et à faible latence. Cet article expliquera comment utiliser WebSocket et JavaScript pour créer un système efficace d'interaction de données en temps réel et fournira des exemples de code spécifiques.

1. Qu'est-ce que WebSocket
WebSocket est un protocole de communication full-duplex sur une seule connexion TCP, qui permet l'échange de données en temps réel entre le client et le serveur. Grâce à WebSocket, le navigateur peut établir une connexion à long terme avec le serveur et envoyer des messages dans les deux sens. Le serveur peut envoyer activement des données au client au lieu de simplement répondre aux demandes. De plus, WebSocket offre un moyen plus efficace de transférer des données en réduisant la surcharge et la latence des connexions HTTP.

2. Étapes pour utiliser WebSocket

  1. Établir une connexion WebSocket
    Tout d'abord, nous devons créer un objet WebSocket en JavaScript et spécifier l'adresse du serveur auquel se connecter. L'exemple de code est le suivant :
var ws = new WebSocket("ws://example.com/socket");
Copier après la connexion
  1. Écoute des événements WebSocket
    Une fois la connexion WebSocket établie, nous pouvons écouter certains événements à gérer en conséquence lorsque l'état de la connexion change ou que de nouveaux messages sont reçus. Voici quelques événements WebSocket couramment utilisés :
  • open : déclenché lorsque la connexion est établie avec succès.
  • message : Déclenché lorsqu'un message envoyé par le serveur est reçu.
  • close : Déclenché lorsque la connexion est fermée.

Exemple de code :

ws.onopen = function() {
   console.log("WebSocket连接已建立");
};

ws.onmessage = function(event) {
   var message = event.data;
   console.log("收到消息:" + message);
};

ws.onclose = function(event) {
   console.log("连接已关闭");
};
Copier après la connexion
  1. Envoi et réception de messages
    En utilisant la méthode d'envoi de l'objet WebSocket, vous pouvez envoyer des messages au serveur, et le serveur reçoit les messages via l'événement onmessage de WebSocket. Voici un exemple simple montrant comment envoyer et recevoir des messages :
ws.send("Hello Server!");

ws.onmessage = function(event) {
   var message = event.data;
   console.log("收到消息:" + message);
};
Copier après la connexion
  1. Fermer la connexion WebSocket
    Lorsqu'une connexion WebSocket n'est plus nécessaire, nous devons la fermer activement pour libérer des ressources et mettre fin à la connexion. Vous pouvez utiliser la méthode close de l'objet WebSocket pour fermer la connexion :
ws.close();
Copier après la connexion

3. Exemple d'interaction de données en temps réel utilisant WebSocket
Ce qui suit est un exemple de salle de discussion en temps réel utilisant WebSocket, montrant comment utiliser WebSocket pour obtenir une messagerie en temps réel.

Tout d'abord, on crée un objet WebSocket et on précise l'adresse du serveur connecté :

var ws = new WebSocket("ws://example.com/chatroom");
Copier après la connexion

Ensuite, on écoute les événements d'ouverture, de message et de fermeture de WebSocket :

ws.onopen = function() {
   console.log("WebSocket连接已建立");
};

ws.onmessage = function(event) {
   var message = event.data;
   console.log("收到消息:" + message);
   // 在页面上展示新消息
   displayMessage(message);
};

ws.onclose = function(event) {
   console.log("连接已关闭");
};
Copier après la connexion

Sur la page, on peut fournir une zone de saisie et un envoi bouton , l'utilisateur peut taper un message et appuyer sur le bouton d'envoi. Nous pouvons envoyer un message au serveur via le code suivant :

var inputElement = document.getElementById("message-input");
var sendButton = document.getElementById("send-button");

sendButton.onclick = function() {
   var message = inputElement.value;
   ws.send(message);
   inputElement.value = "";
};
Copier après la connexion

En même temps, nous pouvons définir une fonction d'affichage des nouveaux messages, comme l'ajout de nouveaux messages à la liste des enregistrements de chat :

function displayMessage(message) {
   var messageList = document.getElementById("message-list");
   var listItem = document.createElement("li");
   listItem.textContent = message;
   messageList.appendChild(listItem);
}
Copier après la connexion

Lorsque le serveur reçoit un nouveau message, le message est envoyé à tous les clients connectés via la méthode d'envoi de WebSocket, puis le client reçoit le nouveau message via l'événement onmessage et l'affiche sur la page.

Conclusion :
Grâce à WebSocket et JavaScript, nous pouvons facilement mettre en œuvre un système d'interaction de données en temps réel. WebSocket fournit une méthode de transmission de données efficace et à faible latence, rendant possible l'interaction des données en temps réel. Les développeurs peuvent utiliser WebSocket pour créer diverses applications en temps réel basées sur des besoins réels, telles que des salons de discussion, une messagerie instantanée, une surveillance des données en temps réel, etc. L'utilisation créative de WebSocket peut offrir aux utilisateurs une meilleure expérience utilisateur et une interaction de données plus efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La combinaison de Java et WebSocket : comment réaliser un streaming vidéo en temps réel La combinaison de Java et WebSocket : comment réaliser un streaming vidéo en temps réel Dec 17, 2023 pm 05:50 PM

Avec le développement continu de la technologie Internet, le streaming vidéo en temps réel est devenu une application importante dans le domaine Internet. Pour réaliser un streaming vidéo en temps réel, les technologies clés incluent WebSocket et Java. Cet article explique comment utiliser WebSocket et Java pour implémenter la lecture en streaming vidéo en temps réel et fournit des exemples de code pertinents. 1. Qu'est-ce que WebSocket ? WebSocket est un protocole de communication full-duplex sur une seule connexion TCP. Il est utilisé sur le Web.

Comment réaliser une communication en temps réel en utilisant PHP et WebSocket Comment réaliser une communication en temps réel en utilisant PHP et WebSocket Dec 17, 2023 pm 10:24 PM

Avec le développement continu de la technologie Internet, la communication en temps réel est devenue un élément indispensable de la vie quotidienne. Une communication en temps réel efficace et à faible latence peut être obtenue grâce à la technologie WebSockets, et PHP, en tant que l'un des langages de développement les plus utilisés dans le domaine Internet, fournit également la prise en charge WebSocket correspondante. Cet article explique comment utiliser PHP et WebSocket pour établir une communication en temps réel et fournit des exemples de code spécifiques. 1. Qu'est-ce que WebSocket ?

PHP et WebSocket : bonnes pratiques pour le transfert de données en temps réel PHP et WebSocket : bonnes pratiques pour le transfert de données en temps réel Dec 18, 2023 pm 02:10 PM

PHP et WebSocket : meilleures pratiques pour le transfert de données en temps réel Introduction : Dans le développement d'applications Web, le transfert de données en temps réel est une exigence technique très importante. Le protocole HTTP traditionnel est un protocole de modèle requête-réponse et ne peut pas assurer efficacement la transmission de données en temps réel. Afin de répondre aux besoins de transmission de données en temps réel, le protocole WebSocket a vu le jour. WebSocket est un protocole de communication full-duplex qui permet de communiquer en full-duplex via une seule connexion TCP. Comparé à H

SSE et WebSocket SSE et WebSocket Apr 17, 2024 pm 02:18 PM

Dans cet article, nous comparerons les événements envoyés par le serveur (SSE) et les WebSockets, qui sont tous deux des méthodes fiables pour fournir des données. Nous les analyserons sous huit aspects, notamment la direction de la communication, le protocole sous-jacent, la sécurité, la facilité d'utilisation, les performances, la structure des messages, la facilité d'utilisation et les outils de test. Une comparaison de ces aspects est résumée comme suit : Catégorie Événement envoyé par le serveur (SSE) Direction de communication WebSocket Unidirectionnel Bidirectionnel Protocole sous-jacent HTTP Sécurité du protocole WebSocket Identique à HTTP Failles de sécurité existantes Facilité d'utilisation Paramètres Paramètres simples Performances complexes Vitesse d'envoi rapide des messages Affecté par le traitement des messages et la gestion des connexions Structure du message Texte brut ou binaire Facilité d'utilisation Largement disponible Utile pour l'intégration de WebSocket

WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel Dec 17, 2023 pm 05:30 PM

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Conseils de programmation Golang WebSocket : gestion des connexions simultanées Conseils de programmation Golang WebSocket : gestion des connexions simultanées Dec 18, 2023 am 10:54 AM

Golang est un langage de programmation puissant et son utilisation dans la programmation WebSocket est de plus en plus appréciée par les développeurs. WebSocket est un protocole basé sur TCP qui permet une communication bidirectionnelle entre le client et le serveur. Dans cet article, nous expliquerons comment utiliser Golang pour écrire un serveur WebSocket efficace qui gère plusieurs connexions simultanées en même temps. Avant de présenter les techniques, apprenons d'abord ce qu'est WebSocket. Introduction à WebSocketWeb

Comment Java Websocket implémente-t-il la fonction de tableau blanc en ligne ? Comment Java Websocket implémente-t-il la fonction de tableau blanc en ligne ? Dec 17, 2023 pm 10:58 PM

Comment JavaWebsocket implémente-t-il la fonction de tableau blanc en ligne ? À l’ère d’Internet moderne, les gens accordent de plus en plus d’attention à l’expérience de collaboration et d’interaction en temps réel. Le tableau blanc en ligne est une fonction implémentée sur la base de Websocket. Il permet à plusieurs utilisateurs de collaborer en temps réel pour modifier la même planche à dessin et effectuer des opérations telles que le dessin et l'annotation. Il constitue une solution pratique pour l'enseignement en ligne, les réunions à distance, la collaboration en équipe et. d'autres scénarios. 1. Contexte technique WebSocket est un nouveau protocole fourni par HTML5 qu'il implémente.

Comment utiliser WebSocket pour le transfert de fichiers dans Golang Comment utiliser WebSocket pour le transfert de fichiers dans Golang Dec 18, 2023 am 09:06 AM

Comment utiliser WebSocket pour le transfert de fichiers dans Golang WebSocket est un protocole réseau qui prend en charge la communication bidirectionnelle et peut établir une connexion persistante entre le navigateur et le serveur. Dans Golang, nous pouvons utiliser la bibliothèque tierce gorilla/websocket pour implémenter la fonctionnalité WebSocket. Cet article explique comment utiliser les bibliothèques Golang et Gorilla/Websocket pour le transfert de fichiers. Tout d'abord, nous devons installer Gorilla

See all articles