使用python的同学,有没有因为不知道用什么接口来测试自己的代码而郁闷?这里我们使用python+uvicorn+fastapi来写一些接口DEMO,DEMO中的接口可能包含form-data、x-www-form-urlencoded、json的等等。
安装和运行
安装
pip install fastapi
FastAPI 是一个为你的 API 提供了所有功能的 Python 类
ASGI 服务器,生产环境可以使用 Uvicorn
pip install uvicorn[standard]
示例
__author__ = 'kangpc'
__date__ = '2021-6-27 22:51'
from typing import Optional
import uvicorn
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
def read_item(item_id: int, q: Optional[str] = None):
return {"item_id": item_id, "q": q}
详细解释:
@app.get("/items/{item_id}")
路径操作装饰器,告诉fastapi在该装饰器下方的read_item函数是负责处理如下请求的:
请求路径为/items/{item_id}
使用get操作
def read_item(item_id: int, q: Optional[str] = None)
read_item函数有两个参数item_id,q,且item_id是int型且必填,q是字符串类型且默认值为None的可选参数
`return {"item_id": item_id, "q": q}`
return的对象就是返回内容reponse ,你可以返回一个 dict、list,像 str、int 一样的单个值等等。
启动server两个方式
1.命令行启动
D:\myproject\20210622\test_server>uvicorn example:app --port 8002 --reload
INFO: Started server process [32504]
INFO: Waiting for application startup.