websocket前后端代码
时间: 2023-10-28 15:58:09 浏览: 92
WebSocket是一种在Web浏览器和服务器之间进行全双工通信的协议。以下是一个简单的WebSocket前后端代码示例:
前端代码:
```javascript
var ws = new WebSocket("ws://localhost:8080/msg");
ws.onopen = function(evt) {
console.log("Connection open ...");
ws.send("Hello WebSockets!");
};
ws.onmessage = function(evt) {
console.log("Received Message: " + evt.data);
ws.close();
};
ws.onclose = function(evt) {
console.log("Connection closed.");
};
```
这段代码首先创建了一个WebSocket对象,并通过指定URL("ws://localhost:8080/msg")来建立与服务器的连接。然后,通过监听onopen事件,在连接成功建立后发送一条消息 "Hello WebSockets!"。接下来,通过监听onmessage事件,当接收到服务器发送的消息时,在控制台上打印出接收到的消息,并关闭连接。最后,通过监听onclose事件,在连接关闭后,在控制台上打印出连接已关闭的消息。
后端代码:
对于后端代码的实现,可以根据不同的编程语言和框架进行实现。在这里,我以Node.js为例,使用了WebSocket库ws。
```javascript
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', function connection(ws) {
console.log('Connection established.');
ws.on('message', function incoming(message) {
console.log('Received message: ', message);
ws.send('Server received your message: ' + message);
});
ws.on('close', function close() {
console.log('Connection closed.');
});
});
```
这段代码创建了一个WebSocket服务器,并在8080端口上监听客户端的连接。当有新的连接建立时,会触发connection事件,在该事件的回调函数中,可以处理与客户端的通信逻辑。在这个例子中,当收到客户端发送的消息时,会在控制台上打印出接收到的消息,并将消息发送回客户端。当连接关闭时,会触发close事件,在该事件的回调函数中,打印出连接已关闭的消息。
请注意,这只是一个简单的示例,实际的WebSocket应用可能需要更复杂的逻辑和安全措施来处理连接和消息。具体的实现方式还需要根据你使用的编程语言和框架来确定。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231045053.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)