Heim > Artikel > Web-Frontend > So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript
So implementieren Sie mit WebSocket und JavaScript ein Online-Reservierungssystem
Im heutigen digitalen Zeitalter müssen immer mehr Unternehmen und Dienste Online-Reservierungsfunktionen bereitstellen. Es ist von entscheidender Bedeutung, ein effizientes Online-Reservierungssystem in Echtzeit zu implementieren. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Reservierungssystem implementieren, und es werden spezifische Codebeispiele bereitgestellt.
1. Was ist WebSocket? WebSocket ist ein Protokoll für die Vollduplex-Kommunikation über eine einzelne TCP-Verbindung. Es kann eine dauerhafte Verbindung zwischen dem Browser und dem Server herstellen, um eine Echtzeitkommunikation zu erreichen. Im Vergleich zu herkömmlichen HTTP-Anfragen kann WebSocket Daten schneller senden und empfangen.
Wir gehen davon aus, dass wir ein Online-Reservierungssystem für ein Fitnessstudio entwickeln. Benutzer können über die Website einen geeigneten Zeitraum für die Terminvereinbarung auswählen und das System gibt dem Benutzer umgehend eine Rückmeldung über den Status des ausgewählten Zeitraums.
new WebSocket(url)
verwenden, um eine WebSocket-Verbindung zum Server herzustellen. Dabei ist url
die WebSocket-Adresse des Servers. new WebSocket(url)
来建立到服务器的WebSocket连接。其中url
为服务端的WebSocket地址。const socket = new WebSocket("ws://localhost:8080/ws"); socket.addEventListener("open", (event) => { console.log("WebSocket连接已建立。"); }); socket.addEventListener("message", (event) => { const message = JSON.parse(event.data); console.log("收到消息:", message); });
function bookTimeslot(timeslot) { const message = { action: "book", timeslot: timeslot }; socket.send(JSON.stringify(message)); }
function updateTimeslotStatus(timeslot, status) { const element = document.getElementById(timeslot); element.innerHTML = status; }
<!DOCTYPE html> <html> <head> <script> const socket = new WebSocket("ws://localhost:8080/ws"); socket.addEventListener("open", (event) => { console.log("WebSocket连接已建立。"); }); socket.addEventListener("message", (event) => { const message = JSON.parse(event.data); console.log("收到消息:", message); updateTimeslotStatus(message.timeslot, message.status); }); function bookTimeslot(timeslot) { const message = { action: "book", timeslot: timeslot }; socket.send(JSON.stringify(message)); } function updateTimeslotStatus(timeslot, status) { const element = document.getElementById(timeslot); element.innerHTML = status; } </script> </head> <body> <h1>健身房预约系统</h1> <h2>可预约时间段:</h2> <ul> <li id="timeslot1"><button onclick="bookTimeslot('timeslot1')">8:00-9:00</button></li> <li id="timeslot2"><button onclick="bookTimeslot('timeslot2')">9:00-10:00</button></li> <li id="timeslot3"><button onclick="bookTimeslot('timeslot3')">10:00-11:00</button></li> </ul> </body> </html>
四、服务器实现
在服务器端,我们需要处理客户端发送的预约请求,并根据系统状态更新预约状态。同时,服务器还需要将新的预约状态发送给客户端。
ws
const WebSocket = require('ws'); const wss = new WebSocket.Server({ port: 8080 }); const timeslots = { timeslot1: "可预约", timeslot2: "可预约", timeslot3: "可预约" }; wss.on('connection', (ws) => { ws.on('message', (message) => { const data = JSON.parse(message); if (data.action === "book") { if (timeslots[data.timeslot] === "可预约") { timeslots[data.timeslot] = "已预约"; ws.send(JSON.stringify({ timeslot: data.timeslot, status: timeslots[data.timeslot] })); } } }); ws.send(JSON.stringify(timeslots)); });
const WebSocket = require('ws'); const wss = new WebSocket.Server({ port: 8080 }); const timeslots = { timeslot1: "可预约", timeslot2: "可预约", timeslot3: "可预约" }; wss.on('connection', (ws) => { ws.on('message', (message) => { const data = JSON.parse(message); if (data.action === "book") { if (timeslots[data.timeslot] === "可预约") { timeslots[data.timeslot] = "已预约"; ws.send(JSON.stringify({ timeslot: data.timeslot, status: timeslots[data.timeslot] })); } } }); ws.send(JSON.stringify(timeslots)); });
Wenn der Server einen neuen Reservierungsstatus hat, müssen wir die Statusanzeige auf der Webseite aktualisieren.
ws
verwenden, um einen WebSocket-Server zu erstellen. 🎜🎜rrreee🎜🎜Vollständiges Servercodebeispiel🎜🎜rrreee🎜 5. Zusammenfassung🎜Dieser Artikel stellt vor, wie man WebSocket und JavaScript verwendet, um ein Online-Reservierungssystem zu implementieren, und bietet vollständige clientseitige und serverseitige Codebeispiele. Durch die Verwendung von WebSocket zur Echtzeitkommunikation können wir ein effizienteres Online-Reservierungssystem in Echtzeit implementieren. Es kann auch in anderen Szenarien angewendet werden, die eine Echtzeitkommunikation erfordern. Ich hoffe, dass dieser Artikel für Ihre Projektentwicklung hilfreich sein wird! 🎜Das obige ist der detaillierte Inhalt vonSo implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!