uvicorn main.py 命令说明

uvicorn main.py 命令说明

bash

复制代码
uvicorn main.py

等价于:

bash

复制代码
uvicorn main:app

规则:文件名:实例对象main.py 里面必须有变量叫 app(FastAPI/Starlette 实例)

常用完整命令

bash

复制代码
# 基础启动,默认 127.0.0.1:8000
uvicorn main:app

# 外部可访问,0.0.0.0,端口8000,开启热重载(开发用)
uvicorn main:app --host 0.0.0.0 --port 8000 --reload

# 指定工作进程数(生产环境,不要加 --reload)
uvicorn main:app --host 0.0.0.0 --port 8000 --workers 4

main.py 最小示例

python

运行

复制代码
from fastapi import FastAPI

app = FastAPI()

@app.get("/")
def hello():
    return {"msg": "hello uvicorn"}

常见报错

  1. uvicorn: command not found

bash

复制代码
# 方式1:全局安装
pip install uvicorn
# 或者用 python -m 调用,不用加到PATH
python -m uvicorn main:app --reload
  1. AttributeError: module 'main' has no attribute 'app'
  • main.py 没有定义 app = FastAPI()
  • 或者写错变量名,比如叫 api,那就要写 uvicorn main:api
  1. --reload 仅开发使用,生产环境禁止开启 reload

python -m uvicorn 写法(推荐,环境隔离不容易踩 PATH 坑)

bash

复制代码
python -m uvicorn main:app --host 0.0.0.0 --port 8000 --reload
相关推荐
海天一色y17 小时前
基于FastAPI + Milvus + DeepSeek构建的医学知识问答系统
fastapi·milvus
卷无止境1 天前
FastAPI 实现 SSO,从协议原理到生产级落地
后端·python·fastapi
卷无止境1 天前
FastAPI 与 RustFS 集成指南
后端·python·fastapi
大模型丫丫2 天前
FastAPI 入门指南:从零开始构建高性能 Python API
开发语言·python·fastapi
卷无止境2 天前
Python的contextlib与 FastAPI 中的上下文管理
后端·python·fastapi
卷无止境2 天前
FastAPI Events 深度解析与工程实践
后端·python·fastapi
小月土星3 天前
构建 AI 应用的后端,最主流的选择就是 Python + FastAPI。
后端·fastapi
微学AI4 天前
我把 800 行报错日志压成一张排障卡:用蓝耘元生代做 FastAPI 日志根因分析
网络·oracle·fastapi
捧 花4 天前
FastAPI 基础语法:从一个完整接口理解 Web API 的设计
前端·python·fastapi·middleware
卷无止境4 天前
除了开发api,FastAPI其实也可以配合jinja2模板写页面
后端·python·fastapi