flask Socketio - общие переменные между обработчиками сокетов без глобальных переменных

У меня есть приложение, которое создает экземпляр класса в одном обработчике сокетов и использует его в другом обработчике сокетов. Я хочу сделать это без глобальной переменной, так как я хочу, чтобы все мои сокетные соединения от клиента имели отдельные Bot() объекты

@socketio.on('startBot')
def startBot():        
    bot= Bot()
    session['bot'] = bot

@socketio.on('message')
def message(msg):
    bot = session['bot']
    bot.sendMessage(msg)

Я видел эту ссылку, но не могу установить ее в Flask Session, Это дает мне KeyError :bot Можете ли вы дать мне решение, как я могу сделать это, сохраняя различные объекты для разных клиентов? Кроме того, я должен использовать from flask import session или же from flask_session import Session?

0 ответов

Другие вопросы по тегам