icon icon

Kurs REST API end-to-end – FastAPI, baza danych i autoryzacja

icon

Proces szkoleniowy

Analiza potrzeb szkoleniowych

Jeśli masz życzenie dotyczące programu szkolenia, przeprowadzimy dla Ciebie analizę potrzeb szkoleniowych, która będzie wskazówką dla nas, na jakie aspekty programu położyć większy nacisk – tak, by program szkolenia spełniał konkretne potrzeby.

Co zyskujesz?

icon

Świadome projektowanie API - Nauczysz się projektować API zgodnie z zasadami HTTP i REST, dzięki czemu będziesz tworzyć czytelne endpointy, poprawnie dobierać metody, statusy, nagłówki i unikać częstych błędów.

icon

Praktyczna praca w FastAPI - Samodzielnie zbudujesz aplikację w FastAPI, od konfiguracji projektu po dokumentację Swagger i walidację danych w Pydantic, więc szybciej zaczniesz tworzyć produkcyjne usługi backendowe.

icon

Pełne CRUD bez zgadywania - Opanujesz tworzenie endpointów GET, POST, PUT i DELETE z obsługą path, query i body, dlatego sprawnie zaimplementujesz komplet operacji CRUD i czytelną obsługę błędów w swoim API.

icon

Integracja z bazą danych - Połączysz FastAPI z bazą danych przy użyciu ORM, przygotujesz modele, migracje oraz filtrowanie, sortowanie i paginację, aby budować API gotowe do pracy na realnych danych biznesowych.

icon

Pewność dzięki testom - Nauczysz się pisać testy endpointów w pytest, rozróżniać testy jednostkowe i integracyjne oraz mockować zależności, co pomoże Ci bezpiecznie rozwijać API i szybciej wykrywać regresje.

icon

Bezpieczne uwierzytelnianie - Wdrożysz hashowanie haseł, logowanie oparte o JWT oraz ochronę endpointów i role użytkowników, dzięki czemu przygotujesz API z realnym mechanizmem autoryzacji i kontroli dostępu.

icon

Lepsza architektura projektu - Poznasz podejście warstwowe, Dependency Injection, konfigurację środowisk oraz logowanie, więc uporządkujesz kod i łatwiej przygotujesz projekt do rozwijania przez zespół i utrzymania w czasie.

icon

Gotowość do wdrożenia - Dowiesz się, jak uruchamiać aplikację przez Uvicorn, przygotować ją do pracy w Dockerze, zadbać o dokumentację i podstawy skalowania, aby sprawniej przejść od kodu do działającej usługi.

Program szkolenia

1. Wprowadzenie do HTTP i architektury API

  • model klient–serwer,
  • metody HTTP (GET, POST, PUT, DELETE),
  • statusy odpowiedzi i nagłówki,
  • architektura REST i dobre praktyki projektowania API,
  • narzędzia (Postman, Swagger, curl).

2. Podstawy FastAPI

  • instalacja i konfiguracja środowiska,
  • struktura projektu,
  • tworzenie pierwszego endpointu,
  • automatyczna dokumentacja (Swagger/OpenAPI),
  • walidacja danych (Pydantic).

3. Typy endpointów i operacje CRUD

  • Endpointy GET, POST, PUT, DELETE,
  • obsługa parametrów (path, query, body),
  • walidacja danych wejściowych,
  • serializacja i deserializacja danych,
  • obsługa błędów i wyjątków.

4. Integracja z bazą danych

  • wprowadzenie do ORM (np. SQLAlchemy),
  • połączenie z bazą danych,
  • modele danych i migracje,
  • operacje CRUD na bazie danych,
  • filtrowanie i sortowanie danych,
  • paginate / limit / offset.

5. Testowanie API

  • testowanie endpointów (pytest),
  • testy jednostkowe i integracyjne,
  • mockowanie zależności,
  • walidacja odpowiedzi API,
  • automatyzacja testów.

6. Bezpieczeństwo API

  • hashowanie haseł (bcrypt),
  • uwierzytelnianie (JWT),
  • autoryzacja i role użytkowników,
  • ochrona endpointów,
  • zarządzanie tokenami i sesjami.

7. Dobre praktyki i architektura

  • struktura projektu (warstwy, moduły),
  • Dependency Injection,
  • logowanie i monitoring,
  • obsługa konfiguracji i środowisk,
  • przygotowanie API do wdrożenia.

8. Wdrożenie i rozwój API

  • uruchamianie aplikacji (Uvicorn),
  • konteneryzacja (Docker – wprowadzenie),
  • skalowanie i wydajność,
  • dokumentacja API dla zespołu i klientów,
  • rozwój i utrzymanie API w organizacji.

Jakie są wymagania wstępne do udziału w szkoleniu?

icon

Podstawy Pythona - Powinieneś swobodnie pisać proste skrypty w Pythonie, znać funkcje, moduły, klasy i pracę z pakietami, aby skupić się na API, a nie na nauce samego języka od podstaw.

icon

Znajomość terminala - Powinieneś umieć uruchamiać polecenia w terminalu, instalować biblioteki i pracować z wirtualnym środowiskiem, bo szkolenie obejmuje konfigurację projektu i uruchamianie aplikacji.

icon

Podstawy baz danych - Powinieneś rozumieć, czym są tabele, rekordy, relacje i podstawowe zapytania SQL, aby łatwiej pracować z ORM, modelami danych oraz operacjami CRUD na bazie danych.

icon

Podstawy pracy z webem - Powinieneś kojarzyć, jak działa przeglądarka, żądanie i odpowiedź HTTP oraz format JSON, ponieważ szkolenie dotyczy komunikacji klient-serwer i budowy nowoczesnego API.