har*_*tio 1 python flask socket.io
classes.py)发出 socketio 消息?classes.py已经知道socketio变量的知识,即使尝试直接导入它也不起作用。
请帮我解决我的问题!
这是我的代码;
app.py
from flask import Flask, render_template, redirect, url_for, request, session, send_from_directory, jsonify
from flask_socketio import SocketIO
from classes import *
app = Flask(__name__)
socketio = SocketIO(app, message_queue='redis://localhost:6379')
if __name__ == "__main__":
app.debug = True
socketio.run(app, port=5000, debug=True, use_reloader=True)
Run Code Online (Sandbox Code Playgroud)
classes.py
from flask import Flask, request, session, redirect, url_for, jsonify
import requests, json, random, sqlite3
from flask_socketio import SocketIO
class notify:
def __init__(self, message=None):
socketio.emit('notification', {'message': message})
Run Code Online (Sandbox Code Playgroud)
@app.route(),这会触发socketio.emit()小智 5
它似乎有一个循环引用。您应该app从入口点划分变量。
应用程序
from flask import Flask, render_template, redirect, url_for, request, session, send_from_directory, jsonify
from flask_socketio import SocketIO
app = Flask(__name__)
socketio = SocketIO(app, message_queue='redis://localhost:6379')
Run Code Online (Sandbox Code Playgroud)
类.py
from app import socketio
class notify:
def __init__(self, message=None):
socketio.emit('notification', {'message': message})
Run Code Online (Sandbox Code Playgroud)
主文件
from app import app, socketio
from classes import *
if __name__ == "__main__":
app.debug = True
socketio.run(app, port=5000, debug=True, use_reloader=True)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1497 次 |
| 最近记录: |