python - 使用 cx_Freeze 捆绑 Flask 应用程序时出现“ValueError: Invalid async_mode specified”
问题描述
我正在构建一个在 Windows 中使用 Waitress、Flask 和 Flask_SocketIO 的 API。从命令行一切正常,但是当我尝试使用 cx_Freeze 将我的 API 捆绑到 .exe 中然后运行它时,我收到错误:
ValueError: Invalid async_mode specified
关于这个问题,我唯一能找到的是python-socketio github thread。为了解决这个问题,该线程中有很多好的建议可以尝试,但我已经尝试了每一件事,但仍然有相同的结果。
我怀疑我缺少一个模块,但我不知道如何具体找出缺少哪个模块。有人对尝试的事情有任何建议吗?即使它不能直接解决我的问题,知道如何深入堆栈跟踪以查找丢失的模块也会有所帮助。
解决方案
这在使用 pyInstaller 时让我很困扰。我尝试向 hiddleImports 添加许多不同的模块,但后来意识到您只需要在 py 文件中提及以下内容。
from engineio.async_drivers import gevent
希望这也适用于 cx_freez。
推荐阅读
- python - Python - InvalidRequestError:无法反映:请求的表在引擎中不可用(mysql + mysqlconnector://
- swift - 如何使用组合实现派生属性?
- android - Camera2:应在后台线程上调用 createCaptureRequest()
- php - 如何处理刀片 laravel
- java - 如何将登录状态存储在 sharedpreferences 中
- java - FOP 无法从 url 加载图像
- python - 如何正确使用 sklearn 的 cross_validate 和 One Hot Encoded 类?
- c++ - 通过元素原始位置的奇偶校验来稳定分区 std::vector
- xamarin.forms - 如何在 VS 2019 上混淆 xamarin 应用程序
- asp.net-core - 如何以编程方式重定向到剃刀代码中的调用者?