Penyiaran data dan penyepaduan WebSocket adalah dua aspek penting dalam membina aplikasi masa nyata dengan Node.js. Dalam artikel ini, kami akan meneroka cara menyiarkan data dan menyepadukan WebSocket untuk mencipta pengalaman pengguna yang interaktif dan responsif.
Langkah 1: Menyiarkan Data daripada Pelayan
Untuk menyiarkan data dari pelayan ke sambungan klien, anda boleh menggunakan kaedah seperti broadcast
menghantar mesej ke semua sambungan atau send
menghantar mesej ke sambungan tertentu. Berikut ialah contoh data penyiaran daripada pelayan:
// ... Initialize WebSocket server
// Broadcast data to all connections
function broadcast(message) {
for(const client of clients) {
client.send(message);
}
}
// Handle new connections
server.on('connection',(socket) => {
// Add connection to the list
clients.add(socket);
// Handle incoming messages from the client
socket.on('message',(message) => {
// Broadcast the message to all other connections
broadcast(message);
});
// Handle connection close
socket.on('close',() => {
// Remove the connection from the list
clients.delete(socket);
});
});
Langkah 2: Mengintegrasikan WebSocket dalam Node.js Aplikasi
Untuk menyepadukan WebSocket ke dalam Node.js aplikasi, anda perlu mewujudkan WebSocket sambungan dalam kod JavaScript anda. Berikut ialah contoh penyepaduan WebSocket dalam bahagian klien aplikasi anda:
// Initialize WebSocket connection from the client
const socket = new WebSocket('ws://localhost:8080');
// Handle incoming messages from the server
socket.onmessage =(event) => {
const message = event.data;
// Process the received message from the server
console.log('Received message:', message);
};
// Send a message from the client to the server
function sendMessage() {
const messageInput = document.getElementById('messageInput');
const message = messageInput.value;
socket.send(message);
messageInput.value = '';
}
Kesimpulan
Dengan menyiarkan data dan menyepadukan WebSocket dalam Node.js, anda boleh membina aplikasi masa nyata yang interaktif dan responsif. Ini meningkatkan pengalaman pengguna dan membolehkan interaksi masa nyata antara aplikasi klien dan pelayan.