【发布时间】:2021-02-18 04:06:54
【问题描述】:
我在 express 上运行以下代码:
app.get('/items/:item', 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);
})
我看到没有发送响应。
我还可以看到 itemProcessed 字符串表示是用 console.log 打印的
如果我从函数中删除异步人员(异步前缀和一些异步方法的调用) - 响应已发送
有什么遗漏吗?提前致谢
【问题讨论】:
-
这听起来很奇怪。可以分享一下
DataItem的process函数的实现吗? -
class DataItem { async process() { let dataRead = await this.getSomeDataFromWeb(); //with fetch this.fillByDataRead(dataRead); return this; } }
标签: node.js express async-await