Nodejs实现WebSoker通信APP端
代码示例
<!DOCTYPE html>
<html>
<head>
<title>WebSocket</title>
</head>
<body>
<h1>WebSocket</h1>
<input type="text" id="messageInput" placeholder="Type a message">
<button id="sendButton">发送</button>
<input type="text" id="targetClientIdInput" placeholder="Target Client ID">
<button id="sendToButton">指定发送</button>
<div id="messages"></div>
<script>
const messagesDiv = document.getElementById('messages');
const messageInput = document.getElementById('messageInput');
const sendButton = document.getElementById('sendButton');
const targetClientIdInput = document.getElementById('targetClientIdInput');
const sendToButton = document.getElementById('sendToButton');
const ws = new WebSocket('ws://localhost:3000');
ws.addEventListener('open', (event) => {
console.log('已连接到 WebSocket 服务器');
});
ws.addEventListener('message', (event) => {
const message = event.data;
const messageElement = document.createElement('p');
messageElement.textContent = message;
messagesDiv.appendChild(messageElement);
});
sendButton.addEventListener('click', () => {
const message = messageInput.value;
if (message) {
ws.send(message);
messageInput.value = '';
}
});
sendToButton.addEventListener('click', () => {
const targetClientId = targetClientIdInput.value;
const message = messageInput.value;
if (targetClientId && message) {
ws.send(`/sendto ${targetClientId} ${message}`);
messageInput.value = '';
targetClientIdInput.value = '';
}
});
</script>
</body>
</html>