python flask websocket_Flask中使用websocket
时间: 2023-11-08 16:49:19 浏览: 178
在 Flask 中使用 WebSocket,可以使用 Flask-SocketIO 扩展。这个扩展提供了一个 WebSocket 服务器和一个 Socket.IO 客户端。
首先,你需要在你的虚拟环境中安装 Flask-SocketIO:
```
pip install flask-socketio
```
然后,你可以在 Flask 应用中初始化 Flask-SocketIO:
```python
from flask import Flask, render_template
from flask_socketio import SocketIO
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
```
现在,你可以使用 `@socketio.on` 装饰器来定义 WebSocket 事件处理程序。例如,下面的代码定义了一个 `message` 事件处理程序:
```python
@socketio.on('message')
def handle_message(message):
print('received message: ' + message)
```
在客户端,你可以使用 JavaScript 来连接到 WebSocket 服务器并发送消息。例如,下面的代码使用 Socket.IO 客户端连接到服务器,并发送一个 `message` 事件:
```javascript
var socket = io.connect('http://localhost:5000');
socket.emit('message', 'Hello, world!');
```
当服务器接收到 `message` 事件时,它会调用 `handle_message` 处理程序,并打印消息内容。
更多关于 Flask-SocketIO 的信息,请参阅官方文档:https://flask-socketio.readthedocs.io/en/latest/
阅读全文