websocket服务端怎么写
时间: 2023-10-18 10:24:27 浏览: 72
WebSocket 是一种基于 TCP 协议的双向通信协议,在 Web 开发中被广泛应用。下面给出一个使用 Python 的 Flask 框架实现 WebSocket 服务端的示例代码:
```python
from flask import Flask
from flask_socketio import SocketIO, emit
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
@socketio.on('connect')
def handle_connect():
print('Client connected')
@socketio.on('disconnect')
def handle_disconnect():
print('Client disconnected')
@socketio.on('message')
def handle_message(data):
print('Received message: ' + data)
emit('response', 'Server received: ' + data)
if __name__ == '__main__':
socketio.run(app)
```
在这个示例中,我们使用 Flask-SocketIO 扩展来实现 WebSocket 的功能。首先,我们创建了一个 Flask 应用和一个 SocketIO 实例。然后,我们定义了三个事件处理函数:
- `handle_connect()`:当有客户端连接时,该函数将被调用。
- `handle_disconnect()`:当客户端断开连接时,该函数将被调用。
- `handle_message(data)`:当客户端发送消息时,该函数将被调用,并打印出接收到的消息。最后,该函数通过 `emit()` 方法向客户端发送消息。
最后,我们使用 `socketio.run()` 方法来启动 WebSocket 服务端。
阅读全文