fastapi的基础框架

from fastapi import FastAPI, HTTPException, BackgroundTasks,Request,Body, File, UploadFile,Form
from fastapi.responses import JSONResponse
//代码初始化函数
@asynccontextmanager
async def lifespan(app: FastAPI):
    try:
        //需要再程序启动的时候一并开启的程序放在这里
        yield
    finally:
        //程序退出的时候要执行的函数全部放在这里
        logging.info("应用退出...")
        try:
            logging.info("清理所有循环任务....")
            #这里不要再lock了,因为stop_process中已经lock,会死锁
            for proc_name in list(process_refs.keys()):
                stop_process(app, proc_name)
                pass
        except:
            logging.info("清理所有循环任务异常")

        app.state.executor.shutdown(wait=True)
        manager.shutdown()  # 显式关闭Manager
        logging.info("清理资源完成")
        
 app = FastAPI(lifespan=lifespan)
 //一个普通的api
@app.post('/test')
async def _test(data: dict = Body(...)):
    res={"code":0}
    return res
//启动程序
if __name__ == '__main__':
    uvicorn.run(app, host="0.0.0.0", port=PORT)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钓愚者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值