HTTP и проектирование API
Новые курсы · Опубликованные курсы
32 урока о договоре клиента и сервера: сообщения, JSON, ошибки, повторяемость, пагинация, условия записи, сессии, CORS, файлы, фоновые операции и вебхуки.
Команды, учебные программы и измерения не выполнялись; результаты примеров описаны как ожидаемые.
Перед началом
Полезно понимать URL и JSON. В первой части определяется каталог, во второй сохраняются его данные и добавляются права, браузерный контекст и жизненный цикл операций.
Уроки 1–16
- HTTP-запрос и ответ
- Методы и смысл операции
- Коды состояния ответа
- Заголовки и метаданные сообщения
- Представление ресурса
- Согласование формата ответа
- Контракт JSON API
- Путь и параметры запроса
- Проверка входного запроса
- Единая форма ошибок API
- Идемпотентность операций
- Ключ повторяемой операции
- Контракт пагинации API
- Фильтрация и сортировка API
- Условные GET-запросы
- Условное изменение ресурса
Новые уроки 17–32
- Варианты кешируемого ответа
- Cookies в HTTP
- Сессия и состояние клиента
- Аутентификация в контракте API
- Права на ресурс
- Граница origin и CORS
- Запросы с cookies и CSRF
- Контракт загрузки файлов
- Частичная передача ресурса
- Перенаправления HTTP
- Ограничение частоты запросов
- Асинхронная операция API
- Контракт доставки вебхука
- Описание контракта OpenAPI
- Совместимое изменение API
- Разбор API перед выпуском
Учебные исходники
Исходники уроков 1–16 · Исходники продолжения.
В архивах находятся исходные состояния, ожидаемые результаты и условия самостоятельного прохождения. Наличие примера не означает, что его исполнение уже подтверждено.