在 FastAPI 中使用中間件非常簡單,只需在應用程序創(chuàng)建時將中間件添加到應用程序中即可。
首先,創(chuàng)建一個中間件函數(shù),這個函數(shù)會在每個請求處理之前運行,可以對請求進行一些處理或者驗證。例如:
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
app = FastAPI()
# 創(chuàng)建一個中間件函數(shù)
async def custom_middleware(request, call_next):
# 在請求處理之前執(zhí)行一些操作
print("Before handling the request")
response = await call_next(request)
# 在請求處理之后執(zhí)行一些操作
print("After handling the request")
return response
# 將中間件添加到應用程序
app.add_middleware(custom_middleware)
在上面的示例中,我們創(chuàng)建了一個名為custom_middleware
的中間件函數(shù),并將其添加到了應用程序中。在這個中間件函數(shù)中,我們可以在處理請求前后執(zhí)行一些操作。
另外,F(xiàn)astAPI 還提供了一些內(nèi)置的中間件,例如CORSMiddleware
用于處理跨域資源共享。你可以像下面這樣添加內(nèi)置中間件:
# 添加 CORS 中間件
app.add_middleware(CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"])
通過添加中間件,可以輕松地對請求進行處理、驗證或者修改,使應用程序更加靈活和強大。