Я хочу связать маршруты в NodeJ со значениями после отправки ответа API в end-ser,
ПОЧЕМУ:> Загруженные файлы будут несколько большими (5-50 МБ каждый) и требуют некоторой обработки, не могутзаставить моего пользователя API ждать / тайм-аут, пока мой код NodeJS работает .. так что нужно, 1: выгрузить файлы и немедленно отправить их пользователю, обработать файлы (несколько обещаний) и вернуть / зарегистрировать успех / неудачу для системы уведомлений.
Мои отдельные блоки кода выполнены и работают нормально (т. Е. Служба загрузки и служба обработки файлов хорошо работают при тестировании и работают хорошо при индивидуальном тестировании.)
теперь с API для загрузки на месте, я имеюдобавлен следующий код:
router.post('/upload', upload.array('upload_data', multerMaxFiles), (req, res, next) => {
////some uploading and processing stuff - works nicely
res.json({ 'message': 'File uploaded successfully.' });// shown to API client nicely
console.log("what next? " + utilz.inspect(uploaded_file_paths)) //prints file names on console
next();
});
ПРОБЛЕМА:
app.use('/api', uploadRoute); //The above code route
//want some processing to be done
app.use(function(req, res, next) {
**want those uploaded file names here**
tried with few response object options but stabs with error
});
ИЛИ использовать что-то вроде ....
app.use(someFunction(uploaded_file_names)); **want those uploaded file names as params**
PS: Любое обещание после успешной загрузки файла приведет к «Ошибка: невозможно установить заголовки после их отправки.», Поэтому бесполезно писать что-либо там.
Любые люди с предложениями.
- N Baua