FastAPI-мен жоғары өнімді API қызметін қалай құруға болады

2/20/2026
4 min read

FastAPI-мен жоғары өнімді API қызметін қалай құруға болады

FastAPI - бұл API құру үшін арнайы әзірленген заманауи, жылдам (тиімді) веб-фреймворк. Ол Python типтік нұсқауларына негізделген және асинхронды бағдарламалауды қолдайды, әзірлеушілерге жоғары өнімді, жоғары қолжетімділігі бар, кідірісі төмен API қызметтерін құруға мүмкіндік береді. Бұл мақалада біз FastAPI-ді пайдаланып жоғары өнімді API қызметін қалай құруды егжей-тегжейлі түсіндіреміз, біз кезең-кезеңімен түсіндіреміз, сізге орта құрудан бастап орналастыруға дейінгі процесті жүзеге асыруға көмектесеміз.

Бірінші қадам: Орта дайындау

Сіз өзіңіздің әзірлеу ортаңызда Python 3.6+ орнатылғанына көз жеткізуіңіз керек. Егер орнатылмаған болса, Python ресми сайтына кіріп, жүктеп алып, орнатыңыз.

FastAPI және Uvicorn орнату

FastAPI өзі қызмет көрсетпейді, ASGI сервері қажет. Мұнда біз Uvicorn-ды, жоғары өнімді ASGI серверін қолданамыз. FastAPI және Uvicorn орнату үшін келесі команданы пайдаланыңыз:

pip install fastapi uvicorn

Екінші қадам: Негізгі API құру

Келіңіздер, қарапайым FastAPI қосымшасын жасайық.

Қосымша файлын жасау

Сіздің жоба каталогыңызда main.py сияқты Python файлын жасаңыз, содан кейін оған келесі кодты жазыңыз:

from fastapi import FastAPI

app = FastAPI()

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

Жоғарыдағы кодта біз алдымен FastAPI-ді импорттап, app экземплярын жасадық. Содан кейін, біз GET маршрутын анықтадық, тамыр жолына / кіргенде қарапайым JSON жауап қайтарады.

Серверді іске қосу

Сіздің FastAPI серверіңізді келесі команданы пайдаланып іске қосыңыз:

uvicorn main:app --reload
  • main: файл атауын білдіреді, .py кеңейтусіз.
  • app: FastAPI экземплярын білдіреді.
  • --reload: әзірлеу режимінде, файл өзгергенде серверді автоматты түрде қайта іске қосу.

Үшінші қадам: Маршруттар мен деректер моделін анықтау

Күрделі API құру үшін сіз Pydantic-ті пайдаланып деректер моделін анықтауыңыз керек.

Деректер моделін жасау

main.py файлына келесі мазмұнды қосыңыз:

from pydantic import BaseModel

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

Бұл код Pydantic-ті пайдаланып Item деректер моделін жасайды, ол тауардың атауы, бағасы және қолжетімділігі туралы үш қасиетті қамтиды.

Жаңа маршрут қосу

Содан кейін, Item типіндегі деректерді қабылдайтын жаңа POST маршрутын анықтай аламыз:

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

Бұл маршрутта FastAPI кіріс деректерін автоматты түрде тексереді және оларды Item моделіне сәйкестендіреді.

Төртінші қадам: Автоматты құжаттама жасау

FastAPI-дің ең үлкен артықшылықтарының бірі - API құжаттамасын автоматты түрде жасау мүмкіндігі. Сіз келесі мекен-жайға кіріп, оны көре аласыз:

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

Бұл жасалған құжаттарда сіз API-ді интерактивті түрде тестілей аласыз, әр маршруттың сұраныс және жауап форматтарын көре аласыз.

Бесінші қадам: Аутентификация қосу

Нақты қолданбаларда аутентификация маңызды кезең болып табылады. Келіңіздер, рөлге негізделген қарапайым аутентификацияны қосайық.

Қауіпсіздік тәуелділіктерін қосу

FastAPI-дің Depends әдісін және OAuth2PasswordBearer-ді пайдаланып аутентификацияны жүзеге асырыңыз:

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

Маршруттарды қорғау

Содан кейін, сіз аутентификацияны қорғауды қажет ететін маршруттарға қосуға болады:

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

Алтыншы қадам: FastAPI қосымшасын орналастыру

Сіз әзірлеуді аяқтағаннан кейін, қосымшаны бұлт серверіне орналастыруыңыз қажет болуы мүмкін. Docker-ды орналастыру үшін таңдауға болады.

Dockerfile жасау

Жоба каталогында Dockerfile деп аталатын файл жасаңыз, келесі мазмұнды енгізіңіз:

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

COPY ./app /app

Docker бейнесін құру

Сіздің терминалыңызда Docker бейнесін құру үшін келесі команданы пайдаланыңыз:

docker build -t myfastapiapp .

Docker контейнерін іске қосу

Сіздің FastAPI қосымшаңызды іске қосыңыз:

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

Қорытынды

Бұл мақалада біз FastAPI-ді пайдаланып жоғары өнімді API қызметін қалай құруды егжей-тегжейлі түсіндірдік, орта дайындаудан бастап, негізгі API құру, маршруттар мен деректер моделін анықтау, аутентификация қосу және орналастырудың толық процесіне дейін. FastAPI көптеген қуатты мүмкіндіктерді ұсынады, заманауи API құруды жеңіл әрі тиімді етеді, сіз ресми құжаттаманы пайдаланып, қосымша мүмкіндіктер мен ерекшеліктерді зерттей аласыз. Бұл мақала сізге FastAPI-мен тезірек танысуға және жобаның әзірлеу тиімділігін арттыруға көмектеседі деп үміттенеміз!

Published in Technology

You Might Also Like

Бұлтты есептеу технологиясын қалай пайдалану керек: Сіздің алғашқы бұлттық инфрақұрылымыңызды құруға арналған толық нұсқаулықTechnology

Бұлтты есептеу технологиясын қалай пайдалану керек: Сіздің алғашқы бұлттық инфрақұрылымыңызды құруға арналған толық нұсқаулық

Бұлтты есептеу технологиясын қалай пайдалану керек: Сіздің алғашқы бұлттық инфрақұрылымыңызды құруға арналған толық нұсқ...

Ескерту! Claude Code-тың әкесі ашық айтты: 1 айдан кейін Plan Mode қолданылмайды, бағдарламалық инженер атағы жоғаладыTechnology

Ескерту! Claude Code-тың әкесі ашық айтты: 1 айдан кейін Plan Mode қолданылмайды, бағдарламалық инженер атағы жоғалады

Ескерту! Claude Code-тың әкесі ашық айтты: 1 айдан кейін Plan Mode қолданылмайды, бағдарламалық инженер атағы жоғалады ...

2026年 Top 10 深度学习资源推荐Technology

2026年 Top 10 深度学习资源推荐

2026年 Top 10 深度学习资源推荐 随着深度学习在各个领域的迅速发展,越来越多的学习资源和工具涌现出来。本文将为您推荐2026年最值得关注的十个深度学习资源,帮助您在这一领域中快速成长。 1. Coursera Deep Learn...

2026 жылғы Топ 10 AI агенттері: Негізгі артықшылықтарды талдауTechnology

2026 жылғы Топ 10 AI агенттері: Негізгі артықшылықтарды талдау

2026 жылғы Топ 10 AI агенттері: Негізгі артықшылықтарды талдау Кіріспе Жасанды интеллекттің жылдам дамуы арқасында AI аг...

2026 жыл: Топ 10 AI құралдары ұсынысы: Жасанды интеллектінің шынайы әлеуетін ашуTechnology

2026 жыл: Топ 10 AI құралдары ұсынысы: Жасанды интеллектінің шынайы әлеуетін ашу

2026 жыл: Топ 10 AI құралдары ұсынысы: Жасанды интеллектінің шынайы әлеуетін ашу Технологияның жылдам дамып жатқан бүгін...

2026 жылғы AWS құралдары мен ресурстарының 10 үздігіTechnology

2026 жылғы AWS құралдары мен ресурстарының 10 үздігі

2026 жылғы AWS құралдары мен ресурстарының 10 үздігі Жылдам дамып келе жатқан бұлтты есептеу саласында Amazon Web Servic...