Table des matières
1. Créer des WebSockets
2. Envoi et réception de messages
3. Test de l'application de chat
Maison interface Web Questions et réponses frontales Comment implémenter une application de chat simple en utilisant JavaScript

Comment implémenter une application de chat simple en utilisant JavaScript

Apr 18, 2023 pm 06:21 PM

Ces dernières années, avec le développement continu de la technologie Internet, la messagerie instantanée est devenue un élément indispensable de la vie quotidienne des gens. De nos jours, les outils de chat sont devenus l’un des moyens importants de communication entre les gens. Cet article explique comment implémenter une application de chat simple à l'aide de JavaScript.

1. Connaissances de base

Avant de commencer à implémenter une application de chat, vous devez maîtriser certaines connaissances de base en développement front-end, telles que HTML, CSS et JavaScript. Si vous ne maîtrisez pas encore ces techniques, apprenez d’abord leurs bases.

2. Conception de l'interface de l'application de chat

Avant de mettre en œuvre l'application de chat, vous devez d'abord concevoir une interface simple. Dans cette application, nous utiliserons HTML et CSS pour créer des mises en page Web et JavaScript pour interagir avec l'utilisateur.

Tout d'abord, nous devons créer un fichier HTML, puis ajouter une zone de texte et un bouton d'envoi à la page :

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>简易聊天应用</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <div id="chat-log"></div>
  <input id="chat-input" type="text" placeholder="请输入一些文字...">
  <button id="send-button">发送</button>
  
  <script src="app.js"></script>
</body>
</html>
Copier après la connexion

Ensuite, définir le style de la page dans un fichier CSS :

body {
  font-family: Arial, sans-serif;
  background-color: #f0f0f0;
  margin: 0;
  padding: 0;
}

#chat-log {
  background-color: #ffffff;
  height: 400px;
  max-width: 600px;
  margin: 20px auto;
  overflow: scroll;
  padding: 10px;
}

#chat-input {
  width: 100%;
  height: 40px;
  box-sizing: border-box;
  padding: 10px;
  font-size: 16px;
  border: 2px solid #cccccc;
}

#send-button {
  display: block;
  margin: 20px auto;
  border: none;
  background-color: #4285f4;
  color: #ffffff;
  font-size: 16px;
  padding: 10px 20px;
  cursor: pointer;
}
Copier après la connexion

Enfin, pour que le application de chat pour Pour une fonctionnalité interactive, nous devons écrire du code JavaScript. Les sections suivantes vous guideront sur la façon de créer une application de chat simple à l'aide de JavaScript.

3. Implémentez une application de chat à l'aide de JavaScript

1. Créer des WebSockets

WebSockets est un nouveau type de technologie de communication bidirectionnelle entre le client et le serveur. En l'utilisant, nous pouvons créer une application de chat en temps réel.

Dans notre application, nous devons créer un WebSocket pour que le client puisse communiquer avec le serveur. Si vous ne connaissez pas encore WebSocket, apprenez d'abord ses bases.

Voici le code JavaScript expliquant comment créer un WebSocket :

const socket = new WebSocket('ws://localhost:3000');

socket.addEventListener('open', function (event) {
  console.log('服务器已连接');
});

socket.addEventListener('message', function (event) {
  console.log('服务器发送了一条消息: ', event.data);
});

socket.addEventListener('close', function (event) {
  console.log('服务器已关闭');
});

socket.addEventListener('error', function (event) {
  console.log('服务器发生了错误');
});
Copier après la connexion

Dans le code ci-dessus, nous avons utilisé l'API WebSocket pour créer une instance WebSocket. Le paramètre que nous transmettons est l'adresse du serveur, veuillez donc modifier les paramètres ici en fonction de l'adresse réelle de votre serveur.

Après avoir créé le WebSocket, nous devons y lier les événements d'ouverture, de message, de fermeture et d'erreur. Ces événements représentent une connexion réussie au serveur, un message reçu, une connexion fermée et une erreur.

2. Envoi et réception de messages

Lors de la mise en œuvre d'une application de chat, nous devons écrire du code pour envoyer les messages saisis par les utilisateurs au serveur et recevoir les messages envoyés par d'autres utilisateurs.

L'opération d'envoi d'un message est très simple. Il vous suffit d'obtenir la valeur dans la zone de texte de la page lorsque l'utilisateur clique sur le bouton "Envoyer" et de l'envoyer au serveur via WebSocket.

const inputElement = document.querySelector('#chat-input');
const sendButtonElement = document.querySelector('#send-button');

sendButtonElement.addEventListener('click', function(event) {
  event.preventDefault();

  const message = inputElement.value;
  inputElement.value = '';

  socket.send(message);
});
Copier après la connexion

Le code ci-dessus crée un écouteur d'événement lorsque l'utilisateur clique sur le bouton "Envoyer", il obtient la valeur dans la zone de texte et l'envoie au serveur via WebSocket. Pour rendre le code plus robuste, nous ajouterons également un événement click à l'élément "sendButtonElement".

Ensuite, nous devons écrire du code pour recevoir les messages envoyés par d'autres utilisateurs. La mise en œuvre de cette fonctionnalité peut rendre votre application de chat plus utile. Lorsqu'un message est reçu, nous devons mettre à jour l'historique des discussions sur la page afin que l'utilisateur puisse voir le message.

const chatLogElement = document.querySelector('#chat-log');

socket.addEventListener('message', function(event) {
  const message = event.data;

  const chatMessageElement = document.createElement('div');
  chatMessageElement.innerText = message;

  chatLogElement.appendChild(chatMessageElement);
});
Copier après la connexion

Dans le code ci-dessus, nous utilisons la méthode addEventListener pour lier l'événement de message pour WebSocket. Lorsque le serveur envoie un message, nous combinons d'abord les données dans un message texte, puis créons un élément div et y ajoutons le message.

3. Test de l'application de chat

Maintenant, notre application de chat est presque terminée. Pour tester, vous pouvez démarrer un serveur Node.js sur votre ordinateur local et ouvrir la page de votre application de chat dans un navigateur.

Entrez la commande suivante dans le terminal pour démarrer le serveur Node.js :

node app.js
Copier après la connexion

Parmi eux, app.js est le nom de fichier du code du serveur que nous avons écrit. Si vous n'avez pas encore écrit ce code, veuillez d'abord vous référer au didacticiel sur la façon d'implémenter WebSockets à l'aide de Node.js.

Vous pouvez maintenant ouvrir la page de discussion dans votre navigateur et saisir votre message dans la zone de texte. Ensuite, cliquez sur le bouton "Envoyer". À ce stade, vous devriez voir le message que vous avez entré dans votre historique de discussion.

#### 4. Résumé

JavaScript est un langage de programmation puissant qui peut être utilisé pour écrire des applications de chat très pratiques. Dans cet article, nous avons présenté comment implémenter une application de chat simple à l'aide de WebSocket. Nous avons créé une page en utilisant HTML, CSS et JavaScript et mis en œuvre une communication en temps réel à l'aide de WebSocket. Si vous ne maîtrisez pas encore ces compétences, je vous suggère d'abord de maîtriser ces bases avant de réaliser ce petit projet.

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)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

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)

Qu'est-ce que l'utilisation Effecte? Comment l'utilisez-vous pour effectuer des effets secondaires? Qu'est-ce que l'utilisation Effecte? Comment l'utilisez-vous pour effectuer des effets secondaires? Mar 19, 2025 pm 03:58 PM

L'article traite de l'utilisation Effecte dans React, un crochet pour gérer les effets secondaires comme la récupération des données et la manipulation DOM dans les composants fonctionnels. Il explique l'utilisation, les effets secondaires courants et le nettoyage pour éviter des problèmes comme les fuites de mémoire.

Comment fonctionne le currying en JavaScript et quels sont ses avantages? Comment fonctionne le currying en JavaScript et quels sont ses avantages? Mar 18, 2025 pm 01:45 PM

L'article traite du curry dans JavaScript, une technique transformant les fonctions mulguments en séquences de fonctions à argument unique. Il explore la mise en œuvre du currying, des avantages tels que des applications partielles et des utilisations pratiques, améliorant le code

Comment fonctionne l'algorithme de réconciliation React? Comment fonctionne l'algorithme de réconciliation React? Mar 18, 2025 pm 01:58 PM

L'article explique l'algorithme de réconciliation de React, qui met à jour efficacement le DOM en comparant les arbres DOM virtuels. Il traite des avantages de la performance, des techniques d'optimisation et des impacts sur l'expérience utilisateur. Compte de charge: 159

Quelles sont les fonctions d'ordre supérieur en JavaScript, et comment peuvent-ils être utilisés pour écrire du code plus concis et réutilisable? Quelles sont les fonctions d'ordre supérieur en JavaScript, et comment peuvent-ils être utilisés pour écrire du code plus concis et réutilisable? Mar 18, 2025 pm 01:44 PM

Les fonctions d'ordre supérieur dans JavaScript améliorent la concision du code, la réutilisabilité, la modularité et les performances par abstraction, modèles communs et techniques d'optimisation.

Comment connectez-vous les composants React au magasin Redux à l'aide de Connect ()? Comment connectez-vous les composants React au magasin Redux à l'aide de Connect ()? Mar 21, 2025 pm 06:23 PM

L'article discute de la connexion des composants React à Redux Store à l'aide de Connect (), expliquant MapStateToproprop, MapDispatchToprops et des impacts de performances.

Qu'est-ce que UseContext? Comment l'utilisez-vous pour partager l'état entre les composants? Qu'est-ce que UseContext? Comment l'utilisez-vous pour partager l'état entre les composants? Mar 19, 2025 pm 03:59 PM

L'article explique UseContext dans React, qui simplifie la gestion de l'État en évitant le forage des accessoires. Il traite des avantages tels que les améliorations centralisées de l'État et des performances grâce à des redevances réduites.

Comment empêchez-vous le comportement par défaut dans les gestionnaires d'événements? Comment empêchez-vous le comportement par défaut dans les gestionnaires d'événements? Mar 19, 2025 pm 04:10 PM

L'article discute de la prévention des comportements par défaut dans les gestionnaires d'événements à l'aide de la méthode empêchée dedEfault (), de ses avantages tels que une expérience utilisateur améliorée et des problèmes potentiels tels que les problèmes d'accessibilité.

Quels sont les avantages et les inconvénients des composants contrôlés et incontrôlés? Quels sont les avantages et les inconvénients des composants contrôlés et incontrôlés? Mar 19, 2025 pm 04:16 PM

L'article traite des avantages et des inconvénients des composants contrôlés et incontrôlés dans la réaction, en se concentrant sur des aspects tels que la prévisibilité, la performance et les cas d'utilisation. Il conseille les facteurs à considérer lors du choix entre eux.

See all articles