Как сделать несколько запросов POST и PUT и вернуть операцию, если какой-либо из запросов завершился ошибкой
У меня есть веб-приложение, использующее флягу на сервере.
У меня есть вариант использования, когда выполняется несколько вызовов API POST для добавления нескольких изображений. Если сообщения проходят успешно, выполняется следующий вызов API PUT для обновления непрозрачного файла метаданных.
Поскольку файл метаданных содержит информацию, относящуюся к изображениям, в случае сбоя одной из публикаций изображения необходимо отменить всю операцию.
Это сделано для сохранения целостности данных.
Я читал о концепции многокомпонентных пакетов и думаю, что это может быть способом решения проблемы.
Множественные POST и последующие PUT отправляются на сервер в одном запросе.
Сервер обрабатывает запросы и выполняет откат, если он терпит неудачу в любой момент, или выполняет единственную фиксацию транзакции, если все вызовы завершаются успешно.
Я наткнулся на пакет Flask-batch, который реализует этот подход.
Считаете ли вы, что использование многоэкземплярной партии - хороший способ решить проблему?
Если да, знаете ли вы о других пакетах, которые реализуют составную пакетную обработку? (Flask-batch упоминает, что он находится в альфа-состоянии).
Или это было бы легко реализовать с нуля?
В противном случае, может ли кто-нибудь порекомендовать другой подход к решению проблемы?
Спасибо Ави