Paano Gumamit ng FastAPI para Bumuo ng Mataas na Pagganap na API Service

2/20/2026
5 min read

Paano Gumamit ng FastAPI para Bumuo ng Mataas na Pagganap na API Service

FastAPI ay isang modernong, mabilis (epektibo) na Web framework na dinisenyo para sa pagbuo ng API. Ito ay batay sa Python type hints at sumusuporta sa asynchronous programming, na nagpapahintulot sa mga developer na bumuo ng mataas na pagganap, mataas na availability na mababang latency na mga API service. Ang artikulong ito ay detalyadong magpapakita sa iyo kung paano gamitin ang FastAPI upang bumuo ng mataas na pagganap na API service, at kami ay magbibigay ng sunud-sunod na paliwanag upang matulungan kang makamit ang buong proseso mula sa paghahanda ng kapaligiran hanggang sa deployment.

Unang Hakbang: Paghahanda ng Kapaligiran

Kailangan mong tiyakin na ang iyong development environment ay may naka-install na Python 3.6+. Kung hindi pa ito naka-install, maaari mong bisitahin ang Python Official Website upang i-download at i-install.

I-install ang FastAPI at Uvicorn

Ang FastAPI mismo ay hindi nagbibigay ng serbisyo, kailangan nito ng isang ASGI server upang mag-host. Dito, gagamitin natin ang Uvicorn, isang mataas na pagganap na ASGI server. Maaari mong gamitin ang sumusunod na utos upang i-install ang FastAPI at Uvicorn:

pip install fastapi uvicorn

Ikalawang Hakbang: Bumuo ng Batayang API

Gumawa tayo ng isang simpleng FastAPI application.

Lumikha ng Application File

Sa iyong project directory, lumikha ng isang Python file, halimbawa main.py, at isulat ang sumusunod na code:

from fastapi import FastAPI

app = FastAPI()

@app.get("/")
async def read_root():
    return {"message": "Hello, World!"}

Sa itaas na code, una naming inimport ang FastAPI at lumikha ng isang app instance. Pagkatapos, nagdefine kami ng isang GET route na nagbabalik ng isang simpleng JSON response kapag na-access ang root path /.

Simulan ang Server

Gamitin ang sumusunod na utos upang simulan ang iyong FastAPI server:

uvicorn main:app --reload
  • main: tumutukoy sa pangalan ng file, walang .py na suffix.
  • app: tumutukoy sa FastAPI instance.
  • --reload: sa development mode, awtomatikong nire-restart ang server kapag may pagbabago sa file.

Ikatlong Hakbang: Magdefine ng Routes at Data Models

Upang makabuo ng kumplikadong API, kailangan mong gumamit ng Pydantic upang magdefine ng data models.

Lumikha ng Data Model

Magdagdag ng sumusunod na nilalaman sa main.py:

from pydantic import BaseModel

class Item(BaseModel):
    name: str
    price: float
    is_available: bool = True

Ang code na ito ay gumagamit ng Pydantic upang lumikha ng isang data model na Item, na naglalaman ng tatlong properties: pangalan ng produkto, presyo, at kung ito ay available.

Magdagdag ng Bagong Route

Susunod, maaari tayong magdefine ng isang bagong POST route upang tumanggap ng data na uri Item:

@app.post("/items/")
async def create_item(item: Item):
    return {"item_name": item.name, "item_price": item.price}

Sa route na ito, awtomatikong ie-verify ng FastAPI ang mga ipinasok na data at i-map ito sa Item model.

Ikaapat na Hakbang: Awtomatikong Pagbuo ng Dokumentasyon

Isa sa mga pinakamalaking bentahe ng FastAPI ay ang kakayahang awtomatikong bumuo ng API documentation. Maaari mong tingnan ito sa pamamagitan ng pag-access sa mga sumusunod na address:

  • Swagger UI: http://127.0.0.1:8000/docs
  • ReDoc: http://127.0.0.1:8000/redoc

Sa mga nabuo na dokumentasyong ito, maaari mong subukan ang API nang interactive, tingnan ang request at response format ng bawat route.

Ikalimang Hakbang: Magdagdag ng Authentication

Sa aktwal na aplikasyon, ang authentication ay isang mahalagang bahagi. Magdagdag tayo ng isang simpleng role-based authentication.

Magdagdag ng Security Dependencies

Gamitin ang Depends method ng FastAPI at OAuth2PasswordBearer upang ipatupad ang authentication:

from fastapi import Depends, HTTPException, status
from fastapi.security import OAuth2PasswordBearer

oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")

async def fake_decode_token(token):
    return {"sub": token}

async def get_current_user(token: str = Depends(oauth2_scheme)):
    user = fake_decode_token(token)
    if user is None:
        raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid authentication credentials")
    return user

Protektahan ang Routes

Pagkatapos, maaari mong idagdag ang authentication sa mga route na kailangang protektahan:

@app.get("/users/me")
async def read_users_me(current_user: dict = Depends(get_current_user)):
    return current_user

Ikaanim na Hakbang: I-deploy ang FastAPI Application

Kapag natapos mo na ang development, maaaring kailanganin mong i-deploy ang application sa cloud server. Maaari mong piliing gumamit ng Docker para sa deployment.

Lumikha ng Dockerfile

Sa project directory, lumikha ng isang file na tinatawag na Dockerfile, at ilagay ang sumusunod na nilalaman:

FROM tiangolo/uvicorn-gunicorn-fastapi:python3.8

COPY ./app /app

Bumuo ng Docker Image

Sa iyong terminal, gamitin ang sumusunod na utos upang bumuo ng Docker image:

docker build -t myfastapiapp .

Patakbuhin ang Docker Container

Patakbuhin ang iyong FastAPI application:

docker run -d --name fastapi -p 80:80 myfastapiapp

Buod

Sa artikulong ito, detalyado naming ipinaliwanag kung paano gamitin ang FastAPI upang bumuo ng mataas na pagganap na API service, mula sa paghahanda ng kapaligiran hanggang sa paglikha ng batayang API, pagdefine ng routes at data models, at pagkatapos ay pagdaragdag ng authentication at deployment. Nagbibigay ang FastAPI ng maraming makapangyarihang tampok, na ginagawang madali at epektibo ang pagbuo ng modernong API, maaari mong tuklasin ang higit pang mga tampok at katangian sa pamamagitan ng opisyal na dokumentasyon. Umaasa kami na ang artikulong ito ay makakatulong sa iyo na mas mabilis na makapagsimula sa FastAPI at epektibong mapabuti ang iyong proyekto sa pagbuo!

Published in Technology

You Might Also Like