@smlwmy

Как выполнить два запроса подряд?

У меня есть функции проверки. Я их вынес в отдельные функции и вызываю в обработчиках маршрутов.
// CHECK VALID URL
const checkValidUrl = async (req, res) => {}

// CHECK RIGHTS
const checkRights = async (req, res) => { }

Вызов:
// CHECK URL
router.post('/url', async(req, res) => checkValidUrl(req, res));

// CHECK RIGHTS 
router.post('/rights', async (req, res) => checkRights(req, res));


Когда я пытаюсь выполнить две функции подряд, то получаю исключение
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client


Я так полагаю, что при выполнении первой функции, объект req, res уже 'занят', и когда вторая пытается взять их же, то получает отказ. Вопрос. Как сделать два запроса в ряд. Может объединить в одну функцию, где будут "общие" req,res, но как? Пытался в каждый функции завершать через res.end(). Такая же ошибка. Может можно как то обнулить эти объекты после выполнения? Подскажите что делать.
  • Вопрос задан
  • 82 просмотра
Пригласить эксперта
Ответы на вопрос 2
@de1m
На сколько я знаю, на один post приходящий от клиента возможет только один ответ. Надо в один ответ оба вставлять.
Ответ написан
@Lebed71
Node.js Developer
По всей видимости у вас где-то ошибка в коде функций-обработчиков, покажите, что там.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
от 200 000 до 300 000 руб.
Cindx Москва
от 130 000 до 180 000 руб.
Reelmotion Games Санкт-Петербург
от 45 000 до 75 000 руб.
18 янв. 2019, в 14:48
50000 руб./за проект
18 янв. 2019, в 14:12
70000 руб./в месяц