express的退出处理程序关闭所有打开的连接

exit handler for express to close all open connections

本文关键字:连接 退出 处理 程序 express      更新时间:2023-09-26

我有一个node-express应用程序,通过节点子进程,我运行一个二进制文件,并发出请求,这将带回通过SSE在stdout.on('data')处理程序发送到浏览器的流数据。我有一个child.on('exit')处理程序,每当二进制下降时,退出处理程序被调用,我可以看到适当的exitCode,除此之外,我想关闭所有打开的连接,并使express服务器不接受任何新的请求,并优雅地关闭它。

是否有办法抓住所有打开的连接并在退出处理程序中关闭它们

app.listen返回一个封装的HTTP服务器,您可以在其上调用.close(),它将优雅地关闭打开的连接并停止允许进入的连接。

类似:

let server = app.listen(9000)
child.on("exit", () => server.close())