想要快速搭建一个HTTP服务,用于接口测试。
可以选择fastapi
官方文档:https://fastapi.tiangolo.com/zh/#_4
特点
很简单很快
环境安装
pip install fastapi uvicorn
示例运行
from typing import Optional
import logging
from fastapi import FastAPI, Request
app = FastAPI()
@app.get("/")
def read_root():
return {"Hello": "World"}
@app.post("/test")
async def new_test(req: Request):
bd = await req.body()
logging.warn("request q:%s ===================== body:%s", str(req.scope),str(bd))
return {"Hello": "World2222"}
uvicorn main:app --reload --host=0.0.0.0 --port=80
生产环境中,考虑要daemon模式, 可以配合 superviser 或者用gunicorn 启动 .gunicorn main:app -w 4 -k uvicorn.workers.UvicornWorker --bind=0.0.0.0:8000 -D
其他应用
参考官方文档, 实现一般的API限定类型和检查非常方便 。
获取Request实例
Request, Response 都是starlette的模块提供
文档可参考:https://www.starlette.io/requests/
