【问题标题】:Nodejs / Javascript on input CTRL+C console.logNodejs / Javascript 输入 CTRL+C console.log
【发布时间】:2021-04-12 04:06:47
【问题描述】:

我目前使用这个脚本来重新启动我的脚本。

catch(err){
    console.log(err)
    webhook.send(`Error monitoring **www.-.com**, restarting monitor.`)
    await browser.close()
    await sleep(monitorDelay)
    return checkStock(page, monitorURL, browser, instock)
  }

但是,如果我使用 CTRL+C 手动重新启动我的脚本,我想要一个单独的 webhook.send,它显示“监控已停止”。有谁知道如何检测我的输入“CTRL+C”,然后 => ...

提前致谢!

【问题讨论】:

  • 我不认为 Ctrl+C 是输入,或者至少程序当时没有监听输入

标签: javascript node.js puppeteer cheerio


【解决方案1】:

在节点中,您可以通过侦听EVENT SIGINT 来捕获 CTRL + C 事件

示例脚本

console.log("In an infinite loop, CTRL + C to quit.")

// Start reading from stdin so we don't exit.
process.stdin.resume();


// catch ctrl+c event and exit normally
process.on('SIGINT', function () {
    console.log('Ctrl+C was keyed in, make you webhook call here');
    process.exit(0);
});

但是正如所指出的,这取决于您从命令提示符运行节点脚本文件。

【讨论】:

  • 工作到一定程度。 Console.log 运行良好,但不和谐的 webhook 被过度读取或其他东西。可能是我的事情,感谢您的帮助! :)
猜你喜欢
  • 1970-01-01
  • 2023-03-23
  • 2022-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-16
  • 1970-01-01
  • 2022-11-10
  • 2014-01-09
相关资源
最近更新 更多