FastAPI系列(02):第一个示例
本系列汇总,请查看这里:https://www.cnblogs.com/uncleyong/p/19503695
python环境
python

pycharm

FastAPI安装
pip install fastapi
安装后就包好了pydantic、starlette

另外,FastAPI 推荐使用 uvicorn 来运行服务(Uvicorn 是基于 uvloop 和 httptools 构建的闪电般快速的 ASGI 服务器),所以还需要安装uvicorn
pip install uvicorn
示例及解释
步骤
(1)导入FastAPI
(2)创建一个 app 实例
(3)编写一个路径操作装饰器(如 @app.get("/"))
(4)编写一个路径操作函数(如下面的 def home(): ...)
(5)定义返回值
(6)运行开发服务器(如:uvicorn main:app --reload)
示例
from fastapi import FastAPI # FastAPI是一个为API提供了所有功能的Python类
app = FastAPI() # app这个实例是创建你所有API的主要交互对象。这个app也会被uvicorn所引用
@app.get("/")
def home():
return {"msg": "welcome"}
@app.get("/shop")
def shop():
return {"shop": "商品信息"}
启动服务:命令方式
uvicorn quickstart:app --reload
quickstart:文件quickstart.py app:quickstart --reload: 热启动,代码修改后服务会自动重启,方便代码的开发

请求

启动服务:直接启动
from fastapi import FastAPI
import uvicorn
app = FastAPI()
@app.get("/")
def home():
return {"msg": "welcome"}
@app.get("/shop")
def shop():
return {"shop": "商品信息"}
if __name__ == '__main__':
uvicorn.run("quickstart:app", port=8001, reload=True)
run方法的可选参数很多,还有host等



交互式API文档
fastapi有着非常棒的交互式API文档,基于 OpenAPI 规范,能自动生产交互式API文档,支持 Swagger UI 和 ReDoc 两种交互式界面
Swagger UI
http://127.0.0.1:8001/docs

接口调试
点击“Execute”

点击“Execute”

ReDoc
http://127.0.0.1:8001/redoc

__EOF__
本文作者:持之以恒(韧)
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!

浙公网安备 33010602011771号