Есть у меня основной файл и в нем
app.use('/', router);
В router у меня
import {NextFunction, Request, Response} from "express";
import {sendHttpRequest} from "../../../projects/server/http-request";
import router from "../../../projects/routes";
router.get('/', ( async (req: Request, res: Response, next: NextFunction) => {
try {
let contractId = req.query.contractId;
const err = await sendHttpRequest(contractId, token);
res.send(err).end();
}
catch (e) {
next(e)
}
}));
В sendHttp я вызываю два метода, которые делают запрос к бд
export const sendHttpRequest = async (id: string, token: string) => {
try {
await getProductId(id, token);
return getContractData(id, token);
}
catch (e) {
console.error(e.message)
}
};
Выглядят запросы примерно так
async function getProductId(id, token) {
try {
const variables = {};
const options = {};
const req = await fetch(url, options);
const res = await req.json();
if (res.data.entityObject.Produkt) {
idProduct = res.data.entityObject.Produkt.ID
} else {
// как прокинуть ошибку вверх?
}
}
catch (e) {
console.error(e.message)
}
}
Собственно теперь сам вопрос. Что мне нужно написать , чтобы сообщение об ошибке пробросить вверх в router?
то есть, если я передаю в функцию не рабочий id, d router я хочу получить об этом сообщение.