Express:异步请求处理程序出现问题

时间:2020-11-05 12:40:41

标签: node.js express async-await

我在express上运行以下代码:

set_target_properties(libthird_party PROPERTIES
        # some properties that successfully get applied here
        ARCHIVE_OUTPUT_DIRECTORY "/my/output/dir")

我看到未发送回复。
我也看到了用console.log打印的itemProcessed字符串表示形式 如果我从函数(异步前缀和某些异步方法的调用)中删除了异步人员,则发送响应

是否有缺少的东西?预先感谢

1 个答案:

答案 0 :(得分:0)

我想您应该使用express-async-wrap软件包才能使用async处理程序:

const wrap = require('express-async-wrap')


app.get('/items/:item', wrap(async function (req, res) {
  let itemName = req.params.itemName;
  let item = new DataItem(itemName);
  let itemProcessed = await item.process(); //call of async method 
  console.log(itemProcessed); //prints data processed 
  res.json(itemProcessed);
})