Я предполагаю, что ваше событие emit занимает некоторое время после вызова обработчика события (возможно, обработка некоторых данных и т. Д.).Если это так, то увеличение параметра ping_interval при создании экземпляра socketio решит эту проблему.Сервер ожидает, что клиент будет отправлять ping каждый «ping_interval» (по умолчанию = 25 секунд), и, предполагая, что ваше внешнее приложение не отправляет эти ping, сервер флешки socketio предполагает, что клиент ушел через 25 секунд, и отключает его.Но время обработки в обработчике событий составляет более 25 секунд, и когда пришло время отправлять данные, вы видите сообщение о разъединении, так как нет клиента, который должен быть отправлен.
Вам нужно изменить это значение на большее, чтобы оно заработало.
socketio = SocketIO(app, ping_interval=50)