使用pip安装
安装fastapi的语句
pip install fastapi
可以使用国内阿里云镜像源进行安装,会快很多
pip install fastapi -i https://mirrors.aliyun.com/pypi/simple
api启动依赖于uvicorn,还需要安装uvicorn
pip install uvicorn -i https://mirrors.aliyun.com/pypi/simple
验证是否安装成功
新建test.py文件
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def root():
return {"message": "Hello World"}
使用终端开启uvicorn服务
uvicorn fastapi学习.test:app --reload
- fastapi学习.test:fastapi学习包下的test.py文件(可以理解为Python模块)
- app:test.py文件中app = FastAPI()创建的app对象
- --reload:在代码改变后重启服务器,只能在开发的时候使用
可以看到如下输出
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
INFO: Started reloader process [9092] using StatReload
INFO: Started server process [8740]
INFO: Waiting for application startup.
INFO: Application startup complete.
然后打开浏览器,输入: http://127.0.0.1:8000
可以看到
终端也会输出
INFO: 127.0.0.1:57700 - "GET / HTTP/1.1" 200 OK
访问 http://127.0.0.1:8000/docs,会看到自动生成的API交互文档
INFO: 127.0.0.1:57699 - "GET /docs HTTP/1.1" 200 OK
INFO: 127.0.0.1:57699 - "GET /openapi.json HTTP/1.1" 200 OK
FastAPI程序结构
编写一个简单的FastAPI程序需要五个小步骤
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def root():
return {"message": "Hello World"}
第一步,导入FastAPI
from fastapi import FastAPI
第二步,创建一个app实例
app = FastAPI()
第三步,编写一个 路径操作装饰器
@app.get("/")
- 可以将get操作方法更改成@app.post()、@app.put()、@app.delete()等方法
- 可以更改相应的路径("/")为自己想要的,例如更改为("/hello_word/")
第四步,编写一个路径操作函数,例如下面代码中的root函数。它位于路径操作装饰器下方
def root():
return {"message": "Hello World"}
这个函数的返回值可以是dict,list,单独的值,比如str,int,或者是Pydantic模型
第五步、运行开发服务器uvicorn main:app --reload即可访问api链接
例如在终端运行uvicorn main:app --reload之后,在浏览器输入127.0.0.1:8000,出现"message": "Hello World"这句话
在这里可以自己指定要运行的服务器ip和端口号
例如:uvicorn main:app --host 127.0.0.1 --port 8001 --reload表示指定本地电脑为服务器,端口号为8001