FastAPI leiðarvísir: Bestu venjur fyrir að byggja háþróaða API
FastAPI leiðarvísir: Bestu venjur fyrir að byggja háþróaða API
Í nútíma bakendaþróun er FastAPI að verða sífellt vinsælli kostur fyrir að byggja háþróaða API. Þessi leiðarvísir mun leiða þig í gegnum eiginleika, kosti FastAPI, og hvernig á að byrja fljótt með því að fylgja ákveðnum skrefum, sem mun hjálpa þér að byggja og dreifa API á skilvirkari hátt í raunverulegum verkefnum.
Hvað er FastAPI?
FastAPI er nútíma, hratt (háþróað) veframmi, byggt á staðlaðri Python tegundartáknun. Það gerir þróunaraðilum kleift að búa til hratt API á einfaldan hátt, á sama tíma og það tryggir hámarks afköst og góða viðhald. Helstu eiginleikar þess eru:
- Háþróað: Byggt á Starlette (fyrir vefhlutann) og Pydantic (fyrir gögnin), afköst nálgast Node.js og Go.
- Sjálfvirk skjalagerð: Í gegnum OpenAPI og JSON Schema getur FastAPI sjálfkrafa búið til gagnvirk API skjöl.
- Auðvelt í notkun: Með því að nota Python tegundartáknun minnkar það algengar villur og eykur framleiðni þróunaraðila.
- Stuðningur við ósamstillta forritun: Styður
asyncogawait, sem gerir það að verkum að það er betra í að meðhöndla mikið af beiðnum.
Kostir FastAPI
FastAPI hefur veruleg kosti miðað við hefðbundin ramma (eins og Django og Flask):
- Fljótleg þróun: Vegna sjálfvirkrar skjalagerðar og tegundarprófunar eykst þróunartíminn verulega.
- Skilvirk afköst: Hentar vel fyrir háa samhliða notkun, sérstaklega við mikla álag.
- Sterkur tegundarstuðningur: Með tegundartáknun dregur það verulega úr villum á keyrslutíma.
- Góð prófunarstuðningur: Fíkn í innspýtingu og beiðnarlíkan gerir prófanir og villuleit auðveldari.
Fljótleg byrjun með FastAPI
1. Umhverfisundirbúningur
Fyrst skaltu tryggja að þú hafir sett upp Python 3.7 eða nýrri útgáfu. Næst geturðu notað eftirfarandi skipun til að setja upp FastAPI og ASGI þjóninn Uvicorn:
pip install fastapi uvicorn
2. Búa til grunn FastAPI forrit
Næst skaltu búa til einfalt FastAPI forrit. Í vinnuskrá þinni skaltu búa til nýjan main.py skrá, með eftirfarandi innihaldi:
from fastapi import FastAPI
app = FastAPI()
@app.get("/")
async def read_root():
return {"Hello": "World"}
@app.get("/items/{item_id}")
async def read_item(item_id: int, q: str = None):
return {"item_id": item_id, "query": q}
3. Keyra forritið
Notaðu Uvicorn til að keyra FastAPI forritið:
uvicorn main:app --reload
Farðu í vafrann og heimsæktu http://127.0.0.1:8000, þú munt sjá svörunina {"Hello": "World"}. Á sama tíma, heimsæktu http://127.0.0.1:8000/items/1?q=test til að fá {"item_id": 1, "query": "test"}.
4. Sjálfvirk skjalagerð
FastAPI býr sjálfkrafa til skjöl fyrir hvert leið, þú getur skoðað gagnvirku skjölin með því að heimsækja eftirfarandi URL:
- Swagger UI:
http://127.0.0.1:8000/docs - ReDoc:
http://127.0.0.1:8000/redoc
5. Gagnalíkan og staðfesting
FastAPI styður einnig að búa til gagnalíkön í gegnum Pydantic, til að staðfesta beiðnina. Til dæmis:
from pydantic import BaseModel
class Item(BaseModel):
name: str
price: float
is_available: bool = True
@app.post("/items/")
async def create_item(item: Item):
return item
Ofangreindur kóði skilgreinir Item gagnalíkan, FastAPI mun sjálfkrafa staðfesta JSON gögnin sem send eru inn.
6. Ósamstillt og samstillt forritun
FastAPI styður ósamstillta forritun, þú getur notað async def til að skilgreina ósamstilltar leiðir. Til dæmis:
import asyncio
@app.get("/wait/")
async def wait_for_response():
await asyncio.sleep(1)
return {"message": "Beðið í 1 sekúndu!"}
7. Dreifa FastAPI forritinu
FastAPI forrit má dreifa í ýmsum umhverfum, þar á meðal Docker, Kubernetes, skýþjónustu o.s.frv. Dæmi um einfaldan dreifingu FastAPI með Docker:
# Dockerfile
FROM python:3.9
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
Síðan skaltu búa til Docker myndina og keyra:
docker build -t myfastapiapp .
docker run -d -p 8000:8000 myfastapiapp
Þú getur heimsótt http://localhost:8000 til að skoða forritið þitt.
Bestu venjur
- Notaðu tegundartáknun: Notaðu alltaf Python tegundartáknun til að auka lesanleika og viðhald kóðans.
- Staðfesting á breytum: Settu upp viðeigandi staðfestingu á breytum samkvæmt viðskiptakröfum, til að tryggja að gögnin sem send eru til API séu gild.
- Miðlæg meðhöndlun á undantekningum: Skilgreindu alhliða villumeðhöndlun, til að tryggja að API geti rétt meðhöndlað undantekningar.
- Skjöl og athugasemdir: Haltu API skjölunum uppfærðum, með athugasemdum og skjölum til að viðhalda aðgengi að kóðanum.
- Notaðu milliliði: Notaðu milliliði skynsamlega til að framkvæma CORS, auðkenningu o.s.frv.
Niðurstaða
FastAPI er öflugt verkfæri til að byggja nútíma háþróaða API, vegna skilvirkni sinnar og auðveldar notkunar er það mjög vinsælt meðal þróunaraðila. Hvort sem þú ert byrjandi eða reyndur þróunaraðili, geturðu haft gagn af því. Í raunverulegri þróun, að sameina bestu venjur getur gert þig skilvirkari í að byggja og viðhalda verkefnum. Vonandi mun þessi leiðarvísir veita þér leiðsögn og aðstoð í FastAPI námsferðinni þinni!





