Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何在SIGINT上停止node.js检查器/ Chrome调试器?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下代码从终端捕获^ C并正常关闭我的Express应用程序:

process.on('SIGINT',() => {
    console.log('SIGINT received ...');
    console.log('ShutTing down the server');

    server.close(() => {
        console.log('Server has been shutdown');
        console.log('ExiTing process ...');
        process.exit(0);
    });
});

但是,如果我使用–inspect启动我的节点实例,则上述代码无法停止检查器和Chrome调试器.当我重新启动我的应用程序时,我收到以下错误

StarTing inspector on 127.0.0.1:9229 Failed: address already in use

如何优雅地停止我的应用程序以避免此错误

完整代码可用here.

解决方法

似乎VSCode,Puppeteer,nodemon,express等导致了这个问题,
你在后台运行了一个进程,或者只是关闭了调试区[浏览器,终端等]或其他什么,
无论如何,你可以在CMD中运行

$ps ax | grep node

然后

$killall -9 node

它不是最好的解决方案,我也建议您使用此端口查找进程然后发送关闭信号

$sudo ss -lptn 'sport = :9229'

要么

$sudo netstat -nlp | grep :9229

要么

$sudo lsof -n -i :9229 | grep LISTEN

然后:

$sudo kill <pid>

或者只是[两个步骤合二为一]

$sudo kill `sudo lsof -t -i:9229`

要么

$sudo kill $(sudo lsof -t -i:9229)
@H_403_79@

大佬总结

以上是大佬教程为你收集整理的如何在SIGINT上停止node.js检查器/ Chrome调试器?全部内容,希望文章能够帮你解决如何在SIGINT上停止node.js检查器/ Chrome调试器?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。