Я хотел бы спросить, почему я получаю сообщение об ошибке, которая возникнет, если вы отправите более одного ответа:
events.js:298
throw er; // Unhandled 'error' event
^
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
at ServerResponse.setHeader (_http_outgoing.js:535:11)
at ServerResponse.header (C:\Web Develope\node_modules\express\lib\response.js:771:10)
at ServerResponse.send (C:\Web Develope\node_modules\express\lib\response.js:170:12)
at C:\Web\wiki-API\app.js:69:21
at C:\Web\node_modules\mongoose\lib\model.js:4798:16
at C:\Web\node_modules\mongoose\lib\query.js:4389:12
at C:\Web\node_modules\mongoose\lib\helpers\query\completeMany.js:35:39
at processTicksAndRejections (internal/process/task_queues.js:79:11)
Emitted 'error' event on Function instance at:
at C:\Web\node_modules\mongoose\lib\model.js:4800:13
at C:\Web\node_modules\mongoose\lib\query.js:4389:12
at C:\Web\node_modules\mongoose\lib\helpers\query\completeMany.js:35:39
at processTicksAndRejections (internal/process/task_queues.js:79:11) {
code: 'ERR_HTTP_HEADERS_SENT'
}
Вот мой код:
app.route('/data/:dataName')
.get((req,res)=>{
Article.find({},(err,list_data)=>{
if(!err){
if(list_data){
list_data.forEach((item)=>{
if(_.lowerCase(req.params.dataName) === _.lowerCase(item.title)){
return res.send(item);
}
});
}
res.send("No data found!");
}
})
})
Я до сих пор не могу понять, почему после выполнения 1-го ответа он все еще go к следующему и выдает ошибку!
Спасибо!