Course Outline
Module I: Basics of Web Applications and APIs
1. Web application architecture—client-server model
2. HTTP protocol mechanisms: requests, responses, resources
3. Basic concepts: URI, URL, endpoint
4. Overview of popular APIs and communication methods with them
5. Postman as an HTTP client
6. Type annotations in Python
Module II: FastAPI Framework—Fundamentals
1. First application in FastAPI
2. Defining routes and routing mechanisms
3. Handling POST requests—request body and validation with Pydantic
4. Route parameters
5. Handling HTTP exceptions and the 404 error code
6. Using JSONResponse, configuring default status codes
7. Implementing DELETE requests and the 204 No Content response
8. Updating resources with PUT method
9. Automatically generated documentation (Swagger UI and ReDoc)
10. Defining response schemas
11. Using the requests library to communicate with APIs
12. Advanced Pydantic capabilities
Module III: Database Integration
1. Configuring database connections in the project
2. Psycopg library—basics of PostgreSQL handling
3. ORM SQLAlchemy—object-relational mapping
Module IV: CRUD
1. CRUD principle—analysis of individual operations
2. Implementing database operations using SQLAlchemy
3. Query parameters—sorting and filtering data
4. Testing endpoints with TestClient
Module V: Advanced Aspects of Applications
1. Security—hashing and storing passwords
2. User authentication and authorization mechanisms
3. A simple frontend for the API written in Python
Testimonials (1)
Very good preparation and expertise of a trainer, perfect communication in English. The course was practical (exercises + sharing examples of use cases)