По-простото решение е да съхраните (буферирате) операциите във вашето приложение и да ги изпратите всички заедно на MongoDB, когато крайната точка на ангажимент се изпълнява.
Технически можете ръчно да управлявате жизнения цикъл на транзакциите във вашето приложение и да внедрявате транзакции, обхващащи уеб заявки, но това 1) ще бъде доста неудобно и 2) ще загубите различните обработки на преходни грешки, които драйверът прави вместо вас в withTransaction API.
За да направите това:
- Запознайте се с спецификация на сесиите
- Запознайте се с спецификация на транзакции
- Прочетете удобна tx api спецификация за да знаете какво няма получавате безплатно, ако клиентът ви попита защо излагате грешки, които драйверите не показват
- Прегледайте кода във вашия драйвер, прилагащ тези спецификации
- Имплементирайте достатъчно управление на сесии и транзакции за вашите изисквания във вашето приложение
Може да е по-лесно да разклоните и коригирате драйвера, но това очевидно има други проблеми, произтичащи от вашата кодова база, която се различава от официалната кодова база на драйвера.