我正在创建一个简单的应用程序发送一个简单的消息问候时,用户请求获得主页的请求。
app.get("/",(req,res)=>{
setInterval(function(){
res.status(200);
res.send("hello");
},5000)
})
这个想法是在5秒后发送响应。编译器在发送响应后抛出错误。错误如下
节点:_http_outgoing:663抛出新的错误_HTTP_HEADERS_SENT(“设置”);^
错误[HTTP标题发送错误]:将标头发送到新节点上的客户端后无法设置标头服务器响应中的错误(节点:内部/错误:400:5)。服务器响应中的设置标头(节点:_http_outgoing:663:11)。服务器响应中的标头(C:\用户\prudh\OneDrive\Documents\projects\whatsapp\node_modules\express\lib\response.js:794:10)。进程中的超时列表中的发送标头(C:\用户\prudh\OneDrive\Documents\projects\whatsapp\node_modules\express\lib\response.js:174:12)。进程中的超时列表中的发送标头(C:\用户\prudh\OneDrive\Documents\projects\whatsapp\index.js:40:13)。进程计时器(节点:内部/计时器:507:7){代码:'HTTP报头发送错误' }
为什么我会遇到此错误消息。
这是基本的代码块,所以我没有尝试任何东西。
1条答案
按热度按时间icnyk63a1#
setInterval
重复运行函数,因此当它第二次尝试运行函数时会看到此错误,因为响应已发送到客户端。请改用setTimeout
延迟函数: