მონაცემთა მაუწყებლობა და ინტეგრირება WebSocket არის ორი გადამწყვეტი ასპექტი რეალურ დროში აპლიკაციების შესაქმნელად Node.js. ამ სტატიაში ჩვენ განვიხილავთ, თუ როგორ გავავრცელოთ მონაცემები და გავაერთიანოთ WebSocket მომხმარებლის ინტერაქტიული და საპასუხო გამოცდილების შესაქმნელად.
ნაბიჯი 1: მონაცემთა გადაცემა სერვერიდან
სერვერიდან კლიენტის კავშირებზე მონაცემების გადასაცემად, შეგიძლიათ გამოიყენოთ ისეთი მეთოდები, როგორიცაა broadcast
შეტყობინებების გაგზავნა ყველა კავშირზე ან send
შეტყობინების გაგზავნა კონკრეტულ კავშირზე. აი სერვერიდან მონაცემთა გადაცემის მაგალითი:
// ... 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);
});
});
ნაბიჯი 2: ინტეგრირება WebSocket აპლიკაციებში Node.js
WebSocket აპლიკაციაში ინტეგრირებისთვის Node.js, თქვენ უნდა დაამყაროთ WebSocket კავშირი თქვენს JavaScript კოდში. WebSocket აქ მოცემულია თქვენი აპლიკაციის კლიენტის მხარეს ინტეგრაციის მაგალითი:
// 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 = '';
}
დასკვნა
მონაცემთა მაუწყებლობით და ინტეგრირებით WebSocket, Node.js შეგიძლიათ შექმნათ ინტერაქტიული და რეაგირებადი რეალურ დროში აპლიკაციები. ეს აძლიერებს მომხმარებლის გამოცდილებას და საშუალებას აძლევს რეალურ დროში ურთიერთქმედებას კლიენტისა და სერვერის აპლიკაციებს შორის.