Connexion路由未填充url_map及与Flask-SocketIO集成404问题求助
Connexion + Flask-SocketIO 集成路由异常问题
问题背景
我正在搭建基于Connexion和Flask-SocketIO的最小可运行Flask应用,openapi.yaml中定义了两个路由,但运行时查看url_map仅能看到一条静态路由。
预期目标
- 构建同时通过Connexion处理API路由、Flask-SocketIO处理WebSocket连接的Flask应用
- 未集成Flask-SocketIO时,可正常访问
http://localhost:8000/hello并得到预期响应{"message":"Hello, World!"},但url_map始终为空(该现象可在minApp.py中复现) - 集成Flask-SocketIO后,所有API路由失效,返回404错误
错误信息
集成Flask-SocketIO时出现以下错误:
raise starlette.exceptions.HTTPException(exc.code, detail=exc.description) starlette.exceptions.HTTPException: 404: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. raise NotFound() from None werkzeug.exceptions.NotFound: 404 Not Found: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.
已尝试操作
- 未集成Flask-SocketIO时API响应正常,但
url_map始终为空 - 集成Flask-SocketIO后,所有定义的API路由均返回404错误
- 路由在
openapi.yaml中定义,尝试过用operatorid: connexionApp.hello显式绑定路由,也试过用RestyResolver和RelativeResolver自动解析路由
求助内容
- 为什么Connexion没有把API路由填充到
url_map中? - 如何解决集成Flask-SocketIO后出现的404错误?
- 求Connexion与Flask-SocketIO正确集成的配置方案
内容的提问来源于stack exchange,提问作者CodeBunny
相关产品推荐
相关产品推荐

