Un'applicazione real-time di chat è un eccellente esempio di come utilizzare WebSocket with Node.js per creare un'esperienza utente interattiva e coinvolgente. In questo articolo, esploreremo come creare un'applicazione real-time di chat utilizzando WebSocket e Node.js.
Passaggio 1: configurazione dell'ambiente
Innanzitutto, assicurati di averlo Node.js installato sul tuo computer. Crea una nuova cartella per il tuo progetto e naviga al suo interno usando Terminal o Command Prompt.
Passaggio 2: installazione della WebSocket libreria
Come prima, usa la libreria "ws" per installare la WebSocket libreria:
npm install ws
Passaggio 3: creazione del WebSocket server
Creare un file denominato server.js
e scrivere il seguente codice:
// Import the WebSocket library
const WebSocket = require('ws');
// Create a WebSocket server
const server = new WebSocket.Server({ port: 8080 });
// List of connections(clients)
const clients = new Set();
// Handle new connections
server.on('connection',(socket) => {
console.log('Client connected.');
// Add connection to the list
clients.add(socket);
// Handle incoming messages from the client
socket.on('message',(message) => {
// Send the message to all other connections
for(const client of clients) {
if(client !== socket) {
client.send(message);
}
}
});
// Handle connection close
socket.on('close',() => {
console.log('Client disconnected.');
// Remove the connection from the list
clients.delete(socket);
});
});
Passaggio 4: creazione dell'interfaccia utente(client)
Creare un file denominato index.html
e scrivere il seguente codice:
<!DOCTYPE html>
<html>
<head>
<title>Real-Time Chat</title>
</head>
<body>
<input type="text" id="message" placeholder="Type a message">
<button onclick="send()">Send</button>
<div id="chat"></div>
<script>
const socket = new WebSocket('ws://localhost:8080');
socket.onmessage =(event) => {
const chat = document.getElementById('chat');
chat.innerHTML += '<p>' + event.data + '</p>';
};
function send() {
const messageInput = document.getElementById('message');
const message = messageInput.value;
socket.send(message);
messageInput.value = '';
}
</script>
</body>
</html>
Passaggio 5: esecuzione del server e apertura del browser
In Terminal, esegui il seguente comando per avviare il WebSocket server:
node server.js
Aprire un browser Web e accedere a " http://localhost:8080 " per utilizzare l' real-time applicazione di chat.
Conclusione
Congratulazioni! Hai creato con successo real-time un'applicazione di chat utilizzando WebSocket e Node.js. Questa applicazione consente agli utenti di interagire e inviare/ricevere messaggi in formato real-time. Puoi continuare ad espandere e personalizzare questa applicazione per creare varie interessanti funzionalità!