Мне нужно действие контроллера, которое:
- Авторизует звонок
- Проверяет это
- Возвращает статус "Принято 202".
- Продолжает обработку запроса
- Выполняет вызов внешнего API с результатами ранее принятого и теперь обработанного запроса.
Первые два пункта просты, я использую AuthGuard
, затем class-validator
. Но я не знаю, как вернуть ответ HTTP и продолжить обработку.
Поскольку запрос состоит из массива (возможно, долго выполняющихся) задач, я подумал об использовании перехватчика, который использует RxJS для наблюдения за состоянием задач и вызывает внешний PI по их завершении. Однако у меня нет опыта использования RxJS или перехватчиков (не таким образом), поэтому я действительно не знаю, как оставить процесс перехватчика запущенным, но сразу передать управление действиям контроллера.
Также, может быть, есть другой способ получше? Никакого перехватчика, а просто поместить всю логику потока в контроллер? Другой вариант?