PUT请求工作正常,数据库正在更新,但我得到错误[ERR_HTTP_HEADERS_SENT]'

时间:2018-05-14 15:56:18

标签: node.js

我有一个看起来像这样的看跌期权请求:

router.put('/employees', (req, res, next) => {
      req.body.employees.forEach((employee) => {
        Employee
        .update(
          { _id: employee._id }, 
          { $set: { totalHours: 15 } 
        })
        .exec(
          (err, doc) => {
            if (err) {
              res.status(404).send(err);
            }
            else {
              res.status(200).send(doc);
            }
          }
        )
      })
    })

它应该将每个员工的totalHours属性更新为15.它工作正常,但更新员工后我收到错误(错误[ERR_HTTP_HEADERS_SENT]:无法在将邮件发送到客户端后设置标题)和节点崩溃。

1 个答案:

答案 0 :(得分:0)

您只能回复一次请求。

在您的情况下,您收到请求,循环遍历许多员工,然后在循环内响应请求:即每位员工一次。

您需要完成循环,然后回复一次。