Проверка возврата обратного вызова в express.js - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь вызвать службу по почтовому методу:

router.post('/execute', myservice.execute);

Внутри myservice.execute:

execute(req, res) {
    ...
    res.send(someinfo);
}

Но это услуга, и я не хочу, чтобы она беспокоилась о требовании и разрешении. Я хотел бы сделать что-то вроде ниже:

router.post('/execute', myservice.execute, (req, res) => {
    // if myservice.execute returns someinfo, i will call res.send(someinfo); otherwise will send new Error()
});

Можно ли проверить обратный вызов?

1 Ответ

0 голосов
/ 02 ноября 2018

Вы можете сделать myservice.execute бизнесом, который возвращает someinfo вместо вызовов res.send(someinfo). Затем в файле маршрута:

router.post('/execute', (req, res) => {
    var someinfo = myservice.execute(req);
    // check `someinfo`, i will call res.send(someinfo); otherwise will send new Error()
});

Или вы можете использовать middleware шаблон:

execute(req, res, next) {
    ...
    req.someinfo = someinfo;
    next();
}

На стороне маршрутизатора:

router.post('/execute', myservice.execute, (req, res) => {
    var someinfo = req.someinfo;
    // check `someinfo`, i will call res.send(someinfo); otherwise will send new Error()
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...