node.js - 是否可以从异步函数中向请求发送数据?(Node.js/Express.js)
问题描述
(我是堆栈溢出的新手)。我正在尝试使用req.json()
将 json 发送到 Express.js 中的请求。但是,我是req.json()
从异步函数调用的。因此,我收到错误Error: Can't set headers after they are sent to the client
。我阅读了这篇文章,但它并没有准确回答我的问题——因为我认为我收到错误的原因与该帖子中的提问者不同。所以,我的问题是,是否可以req
从异步函数向对象发送数据?如果是这样,那是怎么做的?如果不是,为什么不可能?
这是一些相关且可验证的代码(由@whodini9 要求):
app.post("/command", async (req, res, next) => {
connections[id].exec(line, { // This is the async function
out: (stdout) => {
res.json({
output: stdout
});
}
}).start();
});
解决方案
推荐阅读
- c# - For 循环未返回预期值 - C# - Blazor
- php - HTTPS/PHP/NGINX:启用 HTTPS 时 php://input 数据为 NULL
- google-sheets - 用于在 Google 表格中的一列中进行多个查找和替换的 Google Apps 脚本
- google-bigquery - BigQuery 计数似乎正在处理数据
- c# - 遍历 C# 中的字典值列表以检查特定键
- javascript - localStorage,找出新旧值之间的差异
- java - osx:为什么 Java 不能读取我的环境变量?
- ios - 递归而不调用先前的函数
- javascript - 函数缺少结束返回语句并且返回类型不包括“未定义”
- xml - 使用命名空间添加 XML 属性