В итоге я сделал то, что мне было нужно, передав два обратных вызова в мой маршрут post()
и вызвав next()
внутри первого вместе с передачей данных, необходимых второму, через объект req
. Мой код выглядит следующим образом:
маршруты / search.js
router.post('/', search_controller.search_create_post, result_controller.result_create_post);
Контроллеры / searchController.js
exports.search_create_post = (req, res, next) => {
let newSearch = new Search({ search_text: req.body.search_text });
newSearch.save((err, savedSearch) => {
if (err) {
console.log(err);
} else {
req.searchData = savedSearch;
}
next();
})
};
Контроллеры / resultController.js
exports.result_create_post = (req,
let newResult = new Result({ url: 'req.body.url', search: req.searchData });
newResult.save((err, savedResult) => {
if (err) {
console.log(err);
} else {
res.send(savedResult);
}
})
};