Kurzusleírás

Bevezetés

  • FastAPI vs Django vs Flask
  • A FastAPI funkcióinak és előnyeinek áttekintése

Első lépések

  • A FastAPI telepítése
  • Séma definiálása az OpenAPI segítségével

Útvonal- és lekérdezési paraméterek

  • Útvonalparamétertípusok deklarálása
  • Adatok elemzése és érvényesítése
  • Kötelező és opcionális paraméterek deklarálása
  • Lekérdezési paramétertípusok konvertálása
  • Több útvonal- és lekérdezési paraméter

Pydantic modell alapú kérelemtest deklarálása

  • Adattípus létrehozása
  • Útvonal-, lekérdezési és testparaméterek kombinálása
  • Érvényesítések és metaadatok deklarálása
  • Mélyen beágyazott modell használata
  • Péladat definiálása
  • Válasz- és további modellek

Űrlapok és fájlok definiálása

  • JSON helyett űrlapidőt használó mezők
  • Fájlparaméterek létrehozása
  • Fájl- és űrlapidő paraméterek használata

Hibakezelés

  • A HTTPException használata
  • Egyéni fejléc hozzáadása
  • Egyéni kivételkezelők telepítése
  • Alapértelmezett kivételkezelők felülírása

Adatbázisok használata

  • ORM-k és fájlstruktúrák
  • A SQLAlchemy részleteinek létrehozása
  • Adatbázismodell létrehozása
  • Pydantic modell létrehozása
  • CRUD műveletek végrehajtása
  • Táblák, függőségek és útvonalműveletek létrehozása
  • Fájlok áttekintése és ellenőrzése
  • Adatbázissal való interakció

Biztonság és hitelesítés

  • Oauth2 és OpenID connect használata
  • Több biztonsági sémák definiálása az OpenAPI-val
  • A FastAPI eszközeinek használata

Üzembe helyezés

  • Üzembe helyezési fogalmak, szakaszok és eszközök
  • Gunicorn és Uvicorn használata
  • Tároló rendszerek (Docker és Kubernetes) használata

Hibaelhárítás

Összefoglalás és következő lépések

Követelmények

  • API-k fogalmainak megértése
  • Python programozási tapasztalat

Célcsoport

  • Programozók
 14 Órák

Résztvevők száma


Ár per résztvevő

Vélemények (4)

Közelgő kurzusok

Rokon kategóriák


Fatal error: Uncaught TypeError: _isl_get_excluded_site(): Return value must be of type ?array, none returned in /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc:38 Stack trace: #0 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc(30): _isl_get_excluded_site() #1 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc(17): isl_get_excluded_site() #2 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/islc7.module(51): get_outline_isls() #3 /apps/hitra7/backdrop/modules/_custom/frontend/islc7/islc7.module(7): islc_prepare_links() #4 /apps/hitra7/npfrontend/nptemplates/default.php(272): islc7_sites_links_array_v3() #5 /apps/hitra7/npfrontend/modules/course/course.php(143): require_once('...') #6 /apps/hitra7/npfrontend/core/routes.php(15): course_menu_callback() #7 /apps/hitra7/npfrontend/__index.php(81): require_once('...') #8 /apps/hitra7/npfrontend/index.php(15): include_once('...') #9 /apps/hitra7/index.php(66): include_once('...') #10 {main} thrown in /apps/hitra7/backdrop/modules/_custom/frontend/islc7/isl_common.inc on line 38