Мы используем cookie для стабильной работы сервиса. Подробнее

FastAPI для начинающих

ФорматОнлайн
Длительность5-6 часов в неделю
Объём11 занятий
О курсе

Подробнее

🏆 Победитель Stepik Awards в номинации "Лучший платный курс года"!   Раздел 1: «Введение в API» мы познакомимся с API, архитектурой REST API. Изучим основные HTTP методы и коды ответа сервера. Раздел 2: «Знакомство с FastAPI» мы познакомимся с основами FastAPI и создадим свое первое API, возвращающее "Hello World". Также мы подробно изучим процесс создания конечных точек с использованием системы маршрутизации в FastAPI. И научимся валидировать параметры, получаемые из пути и тела запросов. Раздел 3: «Создание CRUD-приложения на FastAPI» мы спроектируем и реализуем простой CRUD проект. Познакомимся с основными методами запросов GET, POST, PUT, DELETE, научимся создавать и валидировать модели класса Pydantic. Изучим моделирование ответов, обработку ошибок и коды состояния. Обсудим, как можно использовать шаблоны Jinja для создания представлений и вывода ответов из API. Раздел 4: «Внедрения зависимостей»  мы рассмотрим шаблон внедрения зависимостей, используемый FastAPI для управления экземплярами и структурой проекта с помощью директивы Depends() и сторонних модулей расширения. Раздел 5: «Интернет магазин на FastAPI»  мы рассмотрим основные возможности FastAPI, научимся правильно структурировать проект. Узнаем об использовании APIRouter для организации проектов. Создадим подключение к БД через SQLAlchemy, научимся использовать Alembic для выполнения миграций. Научимся использовать сессии и напишем свои первые запросы, которые в дальнейшем мы сделаем асинхронными. Реализуем аутентификацию используя HTTP Basic Auth,  OAuth2, и научимся генерировать JWT токен. Где в дальнейшем будем использовать его, для проверки прав доступа к различным конечным точкам нашего API. Раздел 6: «Продвинутые возможности в FastAPI» мы рассмотрим версионирование API сервисов, логгирование. Изучим возможности промежуточного ПО, CORS, Session. Также рассмотрим Celery и Redis для создания и управления асинхронными фоновыми задачами. И в заключении раздела напишем веб чат используя FastAPI и WebSocket. Раздел 7: «Docker + FastAPI» мы рассмотрим основные концепции Docker и на примере создадим свой контейнер с Python проектом. Далее мы упакуем FastAPI, PostgreSQL, NGINX в контейнеры и подготовим проект к деплою. Раздел 8. «Деплой проекта через Docker» мы рассмотрим деплой проекта FastAPI, вместе с базой данных PostgreSQL, веб сервером Gunicorn и Nginx на контейнерах Docker с Compose.   У этого курса есть продолжение - Продвинутый FastAPI для продолжающих, а так же дополнительно можете пройти курс - SQLAlchemy для начинающих.
Требования

Что нужно для старта

  • Обладать хорошими практическими знаниями Python и иметь знания HTML, SQL. Желательно наличие знаний SQLAlchemy.
Результат

Что вы получите

  • Работать с фреймворком FastAPI
  • Писать свои API сервисы
  • Валидировать данные через Pydantic
  • Научитесь асинхронно работать с БД через SQLAlchemy и выполнять миграции используя Alembic
  • Создавать аутентификацию на основе базовых методов и OAuth2 и JWT
  • Упаковывать FastAPI в Docker Compose
  • Выполнять деплой проектов на сервер
Аудитория

Для кого этот курс

  • Курс будет полезен для заинтересованных в создании веб-API используя FastAPI.
Содержание

Программа курса

11 занятий
ТемаЧто внутри
01Введение в API

- Что такое API и его типы?
- Изучаем REST. Архитектура и лучшие практики
- HTTP методы и идемпотентность
- HTTP запросы и ответы, коды состояний

02Знакомство с FastAPI

- Что такое FastAPI?
- HelloWorld на FastAPI
- Знакомство с документацией API
- Маршрутизация в FastAPI
- Валидация параметров маршрутов (Path, Query)

03Создание CRUD-приложения на FastAPI

- Проектирование и реализация REST API (GET, POST, PUT, DELETE)
- Модели Pydantic и их валидация, часть 1.
- Модели Pydantic и их валидация, часть 2.
- Использование шаблонов Jinja и форм в FastAPI
- Итоги раздела

04FastAPI + Vue.js на примере CRUD приложения

- Основы взаимодействия Frontend с Backend
- Создание Backend (CRUD приложение на FAST API)
- Создание Frontend ( Vue.js )
- Тестирование взаимодействия

05Внедрения зависимостей

- Внедрение функций и классов зависимости
- Зависимости в операциях пути и глобальные зависимости

06Интернет магазин на FastAPI

- Структурирование FastAPI, APIRouter и написание моделей Pydantic
- Подключение к базе данных используя SQLAlchemy
- Модели SQLAlchemy
- Отношения таблиц в SQLAlchemy, часть 1.
- Отношения таблиц в SQLAlchemy, часть 2.
- Миграции в SQLAlchemy, знакомство с Alembic
- Синхронные запросы SQLAlchemy, часть 1
- Домашнее задание
- Синхронные запросы SQLAlchemy, часть 2
- Подготовка к асинхронным запросам, переход на PostgreSQL
- Асинхронные запросы SQLAlchemy, часть 1.
- Домашнее задание
- Асинхронные запросы SQLAlchemy, часть 2.
- Аутентификация и авторизация. Модель User и регистрация.
- Реализация логина и JWT-аутентификации с ролями
- Интеграция аутентификации с эндпоинтами
- Реализация refresh-токенов
- Итоги работы
- Экзамен

07Доработки интернет магазина

- Пагинация и фильтрация товаров
- Поиск по товарам с использованием полнотекстового поиска
- Управление корзиной
- Управление заказами
- Управление медиафайлами (загрузка изображений товаров)
- Интеграция с платежными системами (на примере ЮKassa)
- Открытый бэклог: от идеи к реализации

08Продвинутые возможности в FastAPI

- Версионирование API
- Middleware (CORS, Session, Custom)
- Логирование приложений
- Создание фоновых задач
- Асинхронные задачи с Celery и Redis
- Создание асинхронного WebSocket

09Docker + FastAPI

- Знакомство с Docker
- Основные команды Docker
- Создание образов и запуск контейнера
- Контейнеризация FastAPI и написание Dockerfile
- Введение в Docker Compose
- Docker Compose на примере FastAPI, PostgreSQL
- Подготовка к деплою, Gunicorn и NGINX в Docker Compose
- Итоги работы

10Деплой проекта через Docker

- Покупка VPS, доменного имени, привязка DNS
- Установка Docker на сервере
- Запуск Docker контейнеров на сервере
- Получение SSL-сертификата от Let's Encrypt и настройка HTTPS

11Дополнительно

- О курсе

01Введение в API

- Что такое API и его типы?
- Изучаем REST. Архитектура и лучшие практики
- HTTP методы и идемпотентность
- HTTP запросы и ответы, коды состояний

02Знакомство с FastAPI

- Что такое FastAPI?
- HelloWorld на FastAPI
- Знакомство с документацией API
- Маршрутизация в FastAPI
- Валидация параметров маршрутов (Path, Query)

03Создание CRUD-приложения на FastAPI

- Проектирование и реализация REST API (GET, POST, PUT, DELETE)
- Модели Pydantic и их валидация, часть 1.
- Модели Pydantic и их валидация, часть 2.
- Использование шаблонов Jinja и форм в FastAPI
- Итоги раздела

04FastAPI + Vue.js на примере CRUD приложения

- Основы взаимодействия Frontend с Backend
- Создание Backend (CRUD приложение на FAST API)
- Создание Frontend ( Vue.js )
- Тестирование взаимодействия

05Внедрения зависимостей

- Внедрение функций и классов зависимости
- Зависимости в операциях пути и глобальные зависимости

06Интернет магазин на FastAPI

- Структурирование FastAPI, APIRouter и написание моделей Pydantic
- Подключение к базе данных используя SQLAlchemy
- Модели SQLAlchemy
- Отношения таблиц в SQLAlchemy, часть 1.
- Отношения таблиц в SQLAlchemy, часть 2.
- Миграции в SQLAlchemy, знакомство с Alembic
- Синхронные запросы SQLAlchemy, часть 1
- Домашнее задание
- Синхронные запросы SQLAlchemy, часть 2
- Подготовка к асинхронным запросам, переход на PostgreSQL
- Асинхронные запросы SQLAlchemy, часть 1.
- Домашнее задание
- Асинхронные запросы SQLAlchemy, часть 2.
- Аутентификация и авторизация. Модель User и регистрация.
- Реализация логина и JWT-аутентификации с ролями
- Интеграция аутентификации с эндпоинтами
- Реализация refresh-токенов
- Итоги работы
- Экзамен

07Доработки интернет магазина

- Пагинация и фильтрация товаров
- Поиск по товарам с использованием полнотекстового поиска
- Управление корзиной
- Управление заказами
- Управление медиафайлами (загрузка изображений товаров)
- Интеграция с платежными системами (на примере ЮKassa)
- Открытый бэклог: от идеи к реализации

08Продвинутые возможности в FastAPI

- Версионирование API
- Middleware (CORS, Session, Custom)
- Логирование приложений
- Создание фоновых задач
- Асинхронные задачи с Celery и Redis
- Создание асинхронного WebSocket

09Docker + FastAPI

- Знакомство с Docker
- Основные команды Docker
- Создание образов и запуск контейнера
- Контейнеризация FastAPI и написание Dockerfile
- Введение в Docker Compose
- Docker Compose на примере FastAPI, PostgreSQL
- Подготовка к деплою, Gunicorn и NGINX в Docker Compose
- Итоги работы

10Деплой проекта через Docker

- Покупка VPS, доменного имени, привязка DNS
- Установка Docker на сервере
- Запуск Docker контейнеров на сервере
- Получение SSL-сертификата от Let's Encrypt и настройка HTTPS

11Дополнительно

- О курсе

Организатор

Автор курса

StepikStepik
Stepik — образовательная платформа и конструктор онлайн-курсов. Мы разрабатываем алгоритмы адаптивного обучения, сотрудничаем с авторами MOOC, помогаем в проведении олимпиад и программ переподготовки. Наша цель — сделать образование открытым и удобным. Stepik — широко известная российская образовательная платформа, основанная в 2013 году. На Stepik зарегистрировано более миллиона пользователей из России и стран СНГ. В настоящее время на Stepik представлены несколько тысяч учебных курсов на самые разные темы.
Подробнее об авторе
Мнения учеников

Отзывы о курсе

Оставьте отзыв

Расскажите о качестве обучения, поддержке и результате. Это поможет другим выбрать организацию осознанно.

Напишите ваш коментарий, не менее 30 символов

Нажимая кнопку, вы даете согласие на обработку персональных данных

Оставьте заявку

Консультант ответит на вопросы о курсе «FastAPI для начинающих» и поможет разобраться в деталях обучения.

Комментарий ...

Нажимая кнопку, вы даете согласие на обработку персональных данных

Информация обновлена 14 сентября 2026 г.

Продолжить выбор

Похожие курсы

Python-разработчик с нуля
−53%5 октября
Python-разработчик с нуля

«Python-разработчик с нуля» от Нетологии поможет начать карьеру в ИТ уже через 6 месяцев. Python, Git, основы разработки, реальные задания, карьерная поддержка.

Онлайн16 занятий
Помощь с трудоустройством
194 515 ₽−53%
90 900 ₽Скидка до 16 сентября
Основы языка Python
22 ак.ч.
Основы языка Python

На курсе вы получите базовые навыки программирования на языке Python. Рассматриваются темы от типов данных до объектно-ориентированного программирования. Python – чрезвычайно мощн…

Онлайн10 занятийНачальный
27 500 ₽
Начать без затрат

Бесплатные курсы

Python для решения практических задач
Бесплатно
Python для решения практических задач

Научились решать простые задачи на питоне, но не можете понять, как сделать что-то полезное? Наш курс научит вас правильно гуглить! На примерах задач сбора данных (Data Scraping)…

Онлайн5 занятий
Бесплатно
Python для геймеров: базовый курс на игровых примерах
Бесплатно4 часа в неделю
Python для геймеров: базовый курс на игровых примерах

Здесь не будет сложных задач «про шахматы»! Здесь не будет абстрактных задач и сложных математических вычислений. Зато есть: теория простым и понятным языком игровые механики логи…

Онлайн12 занятий
Бесплатно
"Поколение Python": курс для начинающих
Бесплатно
"Поколение Python": курс для начинающих

"Поколение Python: курс для начинающих" знакомит с основными типами данных, конструкциями и принципами структурного программирования языка Python. Целевая аудитория – школьники, с…

Онлайн17 занятий
Бесплатно
ЛКПП (Лучший Курс По Python)
Бесплатно
ЛКПП (Лучший Курс По Python)

Курс размещен (продублирован на Степике) по согласованию и с разрешения автора - Никиты Соболева. Телеграм канал автора: Находки в опенсорсе YouTube канал автора: https://www.yout…

Онлайн2 занятий
Бесплатно