当前位置:首页 » 《关注互联网》 » 正文

Python使用flask框架与前端建立websocket链接,并进行数据交互

26 人参与  2024年04月29日 12:36  分类 : 《关注互联网》  评论

点击全文阅读


Python使用flask框架与前端建立websocket链接,并进行数据交互

后端采用的框架为flask,前端用的flask自带的html编写,实现的功能为:前后端建立websocket链接并进行数据交互

一、编写一个flask后端服务

常规创建方式就可以,创建一个flask服务。声明一个websocket实例,以websocket的方式启动这个服务。

安装相关依赖:
pip install flaskpip install flask_socketio
声明应用和websocket实例
from flask import Flask, request, render_templatefrom flask_socketio import SocketIO, emit# 声明应用app = Flask(__name__)# 为通讯添加一个密钥app.config['SECRET_KEY'] = 'secret_key'# 创建websocket实例my_socket = SocketIO(app)
项目目录下新建temlpates文件夹,然后文件夹里新建index.html文件,内容信息,我们稍后补充,先有这个东西就行。
在这里插入图片描述 编写接口信息。编写接口信息的时候要添加websocket通讯的相关方法。
# 声明访问页面信息@app.route('/')def index():# 这里是进行了flask前端模板的渲染,文件就是我们上面建的那个,只写文件名称就可以,框架内部是默认访问temlpates目录的    return render_template('index.html')

新建一个websocket推送接口,使用 emit() 方法推送信息到到前端。然后声明几个websocket建立过程中用到的方法。关于 emit() 的使用,后面讲。

# 数据推送接口,后面调这个接口模拟数据发送@app.route('/send_msg', methods=['post'])def receive_source():    """    推送数据    :return:    """    try:        my_socket.emit('date', request.json, namespace='/')        return 'success'    except Exception as e:        log.error(f'数据处理错误:{     str(e)}')        return 'failed'# 当websocket链接建立的时候,会调用这个@my_socket.on('connect')def handle_connect():    print('WebSocket 链接已经建立')# 关闭用@my_socket.on('disconnect')def handle_disconnect():    print('WebSocket 链接已经关闭')# 发送信息用@my_socket.on('message')def handle_message(data):    emit('msg', data, namespace='/')
以websocket的方式启动服务(填写完后面的html代码后启动)
if __name__ 

点击全文阅读


本文链接:http://zhangshiyu.com/post/101871.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1