如何在Flask中使用WebSocket协议实现双向通信

在Flask中实现WebSocket协议可以使用Flask-SocketIO扩展。下面是一个简单的示例代码:

  1. 首先安装Flask-SocketIO扩展:
pip install flask-socketio
  1. 创建一个Flask应用并初始化SocketIO扩展:
from flask import Flask, render_template
from flask_socketio import SocketIO

app = Flask(__name__)
socketio = SocketIO(app)
  1. 创建一个简单的WebSocket事件处理器:
@socketio.on('message')def handle_message(message): print('received message: ' + message)
    socketio.send('echo: ' + message) @socketio.on('connect')def test_connect(): print('Client connected') @socketio.on('disconnect')def test_disconnect(): print('Client disconnected')
  1. 创建一个简单的HTML模板文件来测试WebSocket连接:
<!DOCTYPE html><html><head> <title>WebSocket Test</title> <script src="https://cdn.socket.io/socket.io-3.0.4.min.js"></script></head><body> <script type="text/javascript"> var socket = io();

        socket.on('connect', function() { console.log('Connected');
            socket.send('Hello, Server!');
        });

        socket.on('message', function(data) { console.log('Received message: ' + data);
        }); </script></body></html>
  1. 运行Flask应用:
if __name__ == '__main__':
    socketio.run(app, debug=True)

现在你可以打开浏览器访问http://localhost:5000来测试WebSocket连接。在浏览器控制台中可以看到接收到的消息。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo6@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram