Node-Red "http request" 节点在没有连接的情况下卡在请求中

Node-Red "http request" node stuck in requesting if no connection

我有一个包含 http request 节点的流,它对 Web 服务进行 POST 调用。

一切正常,但是如果 Node-Red 所在的设备 运行 失去与互联网的连接(通过 LTE 连接),节点将一直停留在请求状态,而不是返回错误。

这是正常行为吗?我可以通过设置超时来解决它吗?怎么做到的?

我的方法是首先检查互联网是否可用(例如:通过 ping google)如果失败,然后 return 一个错误。

您可以为此特定节点设置 requestTimeout 输入值。

将 Node-RED 更新到最新版本解决了该问题。现在我收到了预期的错误,Node-RED 没有挂起。

我已经从版本 v0.19.5 更新到 v 1.0.3。

要在您的请求中设置超时,请将 msg.httpRequestTimeout 设置为您请求之前节点处的毫秒数。

示例:

内部节点“设置超时”

msg.httpRequestTimeout = 60000;
return msg;