即使电脑处于睡眠模式,如何保持使用 Wifi 的 nodejs 程序运行?

问题描述

我正在使用 node-telegram-bot-api 使用 nodejs 编写电报机器人,我在 Windows 10 笔记本电脑上的命令提示符下运行 nodejs 代码,当我的笔记本电脑连接到 Wifi 时它运行良好,但我很快让我的电脑休眠,我的电脑自动断开 WiFi 连接,我的机器人停止响应,我还收到一些错误,例如: error: [polling_error] {"code":"EFATAL","message":"EFATAL: Error: getaddrinfo ENOTFOUND api.telegram.org"} .

我不能一直让我的电脑不处于睡眠模式,所以我想知道是否有办法防止我的电脑与 Wifi 断开连接,即使它处于睡眠模式。以便机器人一直运行。 而且有时当我的电脑长时间睡眠时,机器人会在我让我的电脑进入睡眠状态后立即停止,但几个小时后机器人会再次开启,我的电脑会自动连接到 wifi。 另外,我怀疑停止我的机器人背后的另一个原因是 nodejs 代码在 pc 睡眠时停止,所以是这种情况吗?如果是,那么如何解决这个问题? 如果没有办法解决这个问题,虽然我不喜欢,有什么办法可以让我的机器人在免费的服务器上运行,并使我的机器人 24*7 全天候运行。

解决方法

我不认为有在睡眠模式下运行程序的解决方案。虽然您的节点程序可以在睡眠模式下运行,但是如果您请求在线 API,那么我认为在睡眠模式下很难工作。所以你可以在这里做一件事。

您可以将您的应用托管到 www.heroku.com,这是免费的。您可以 24X7 全天候使用您的机器人。托管您的应用非常简单。

,

这个链接有一个很棒的关于机器人和部署到 heroku 的教程。它甚至被写在了一个 Gith https://dev.to/ishan0445/deploy-telegram-bot-to-heroku-for-free-telegram-bot-development-part-5-3p29

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...