You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行uvicorn启动FastAPI报错:main模块无app属性,无法加载ASGI应用

问题原因分析
  • 启动命令匹配的文件名错误:uvicorn main:app --reload命令中冒号前的main指代加载名为main.py的Python文件,若你的FastAPI代码存储的文件名不是main.py,就无法在对应模块中找到app属性。
  • 终端工作目录不匹配:即使文件命名为main.py,若执行uvicorn命令的终端工作目录不是main.py所在的文件夹,也会加载不到正确的模块。
  • 代码缩进/语法错误:若app = FastAPI()行未顶格编写,被缩进包含在其他函数、判断逻辑内部,没有作为模块顶层属性暴露,也会导致加载失败。
  • 环境兼容性问题:虚拟环境未正确激活、fastapi或uvicorn版本存在兼容问题时,也可能偶发此类加载错误。
解决方案
  • 核对文件命名:将存放对应FastAPI代码的文件重命名为main.py,文件名不要包含大写字母、空格或特殊符号。
  • 核对工作目录:执行启动命令前,先在终端执行cd D:\FASTAPI切换到main.py所在的文件夹,再运行启动命令。
  • 核对代码逻辑:检查app = FastAPI()行是否为顶格编写,没有被其他代码块包裹,代码无语法错误。
  • 适配自定义文件名:如果不想将文件命名为main.py,可以直接修改启动命令适配你的文件名,比如文件名为demo.py时,执行uvicorn demo:app --reload即可,冒号前的名称需要和Python文件名完全一致。
  • 验证运行状态:修复完成后重新执行启动命令,日志无ERROR提示即代表启动成功,访问http://127.0.0.1:8000即可看到返回的{"Hello": "World"}响应内容。

内容的提问来源于stack exchange,提问作者Vikas Jha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 02:24:01