Встречается на 2% собеседований по Python
Как можно сделать POST запрос идемпотентным
Идемпотентность POST-запроса означает, что повторные одинаковые запросы не изменяют состояние системы после первого успешного выполнения. Вот способы достичь этого:
- Использование уникального идентификатора запроса (idempotency-key)
Клиент генерирует уникальный ключ и отправляет его в заголовке. Сервер сохраняет результат первого запроса и возвращает его при повторных запросах с тем же ключом.
python
import requests
idempotency_key = "unique_key_123"
response = requests.post(
"https://api.example.com/resource",
json={"data": "value"},
headers={"Idempotency-Key": idempotency_key}
)-
Проверка существования ресурса
Перед созданием проверять, существует ли ресурс с такими же данными. Если да — возвращать существующий. -
Семантические идентификаторы
Использовать клиентские ID для ресурсов (например,client_idв теле запроса), чтобы сервер мог определить дубликаты.
Идемпотентность особенно важна для платежных систем и критичных операций, где повторная отправка запроса не должна создавать дубликаты.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы