error-handling - 来自节点的Node-RED Handle错误,没有抛出标准异常

标签 error-handling node-red pushover

我想使用Pushover节点发送通知。我已经通过curl使用了一段时间了,很少发送一些消息。那就是为什么我要重击

echo "$curlOutput" | grep -qP '{"status":1' 
if [ ! $? -eq 0 ] 
then
    echo "$2" | mail --append "Content-Type: text/plain; charset=UTF-8" -s "$1" name@company.com
fi

捕获错误,然后通过电子邮件发送消息。

现在,我想在Node-Red中做类似的事情。出于测试目的,如果通过sudo iptables -A OUTPUT -d 104.20.0.0/16 -m comment --comment "Pushovertest" -j REJECT模拟了网络错误

成功阻止。在node-red-log中,我看到了

18 May 13:46:24 - [error] [pushover:252a17dc.1239d8] Error: connect ECONNREFUSED 104.20.125.71:443



现在看看这个Node-RED流

该错误显示在调试窗口中,并且来自 push 节点。 catch节点不能满足期望,显然是因为pushover不使用异常框架https://developer.ibm.com/recipes/tutorials/nodered-exception-handling-framework/

首次测试通过:记录了一个错误。但是在这种情况下,我如何对Node-RED中的错误使用react以做其他事情呢?

最佳答案

我会从源头猜测错误是来自10357-pushover.js文件。

在此行上对node.error()的调用不会推送传入的msg对象,因此不会将其传递到catch节点。 node.error()函数有2个签名,第一个仅接收错误消息,第二个接收错误消息和传入的msg对象,仅第二个转发错误,并且msg对象传递到catch节点。

请随时提交请求请求以更新此节点。

关于error-handling - 来自节点的Node-RED Handle错误,没有抛出标准异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61870314/

相关文章:

php - 检测差错控制算子

Python:图的断开组件中的所有最短路径

node.js - Node-Red 中的最佳实践是否能够源源不断?

python - python 中的 Pushover 确认

error-handling - 检查 WordPress 插件系统要求的正确方法

python - Python多个问题限制为int

editor - Node-红色节点图标的含义和用途?

javascript - 在node-red中使用msg.payload运行javascript函数

javascript - Chrome 扩展程序搜索字符串然后执行某些操作