Думал сделать GET-запрос зависящий от POST.
Реализовал сначала так.
const postPrinterData = (req, res) => {
const printer_id = req.body.printer_id;
// Выполнить нужные действия с полученным printerId
console.log('Получен printer_id:', printer_id);
//отправка константы printer_id для GET-запроса
getPrinter_material({ body: { printer_id } }, res);
};
const getPrinter_material = (request, response) => {
const { printer_id } = request.body;
const query =
SELECT pr.printer_id, m.material
FROM printer_material pm
JOIN printer pr ON pm.printer_id = pr.printer_id
JOIN material m ON pm.material_id = m.material_id
WHERE pr.printer_id = $1;
;
pool.query(query, [printer_id], (error, results) => {
if (error) {
throw error;
}
response.status(200).json(results.rows);
});
};
Но не сработало, я подумал что плохо понял тему плейсхолдеров и как ими пользоваться, по этому решил не мудрить и сделать без него.
const postPrinterData = (req, res) => {
const printer_id = req.body.printer_id;
// Выполнить нужные действия с полученным printerId
console.log('Получен printer_id:', printer_id);
//отправка константы printer_id для GET-запроса
getPrinter_material({ body: { printer_id } }, res);
};
const getPrinter_material = (request, response) => {
const { printer_id } = request.body; // Получаем значение из запроса POST
const query =
`SELECT pr.printer_id, m.material
FROM printer_material pm
JOIN printer pr ON pm.printer_id = pr.printer_id
JOIN material m ON pm.material_id = m.material_id
WHERE pr.printer_id = ${printer_id};`
pool.query(query, (error, results) => {
if (error) {
throw error;
}
response.status(200).json(results.rows);
});
};
Но получил ошибку
столбец "undefined" не существует
, поле чего добавил вывод константы printer_id, значения в ней я точно получаю с помощью POST. Не могу понять в чём ошибка.