FastApi学习
FastApi学习
1.安装
1.1 安装FastApi 模块
pip install fastapi
1.2 ASGI服务器 生产环境可以使用Uvicorn
pip install uvicorn
2.创建一个简单的服务示例
from fastapi import FastAPI
app = FastAPI() # 创建一个 FastAPI实例
@app.get("/") #装饰器
async def main():
return {"user_id": 2027514529}
@app.get("/kai")
async def main():
return {"user_id": "kai"}
3.启动服务
3.1 在终端启动
uvicorn main:app --reload
3.2 在程序直接启动
if __name__ == '__main__':
uvicorn.run("main:app",host='127.0.0.1',port=5899,reload=True)
4.路由的分发
4.1 目录结构:
4.2 待分发Router的写法:
需要从fastapi导入APIRouter模块
而后创建一个APIRouter的实例化对象
代码如下:
from fastapi import APIRouter
dy = APIRouter()
@dy.get("/get")
def get():
return {"return":"抖音"}
4.3 启动程序的写法
from fastapi import FastAPI
import uvicorn
from apps.douyin.main import dy #导入待分发路由的包
app = FastAPI()
# 分发路由 app.include_router()
app.include_router(dy, prefix="/dy", tags=["抖音"]) # 使用FastAPI()的实例化对象app的include_router方法添加路由
if __name__ == '__main__':
uvicorn.run("main:app", host='127.0.0.1', port=5899, reload=True)
路由分发到这里就结束了!
5. 数据的提交
6. 使用技巧
6.1 静态文件
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
可以使用 StaticFiles
从目录中自动提供静态文件。
使用StaticFiles
- 导入
StaticFiles
。 - "挂载"(Mount) 一个
StaticFiles()
实例到一个指定路径。
app.mount("/mao", StaticFiles(directory="statics/imgs"), name="staticssss")
语句解释:
directory="statics/imgs"
表示挂载的路径"/mao"
表示访问的路径name="static"
提供了一个能被FastAPI内部使用的名字。
本文来自博客园,作者:Van-kai,转载请注明原文链接:https://www.cnblogs.com/van-kai/articles/18302593