繁体   English   中英

通过 env var 的 MQTT 节点密码

[英]MQTT node password via env var

尝试使用环境变量中的变量填充 MQTT 节点(本机节点为红色)。 我在 flow.json 中使用了${}$()符号,还在 settings.js 中尝试了 process.env.VAR。 用户名和主机名有效(我假设它们是文本字段)但密码不会呈现,而是保存环境变量名称而不是其内容。 即: $(MQTT_PASSWORD)而不是"password"

有没有人解决过这个问题? 或者有关于它的信息?

在节点的属性中使用 env-vars 的原因是允许它在 Node-RED 启动时动态设置。

如果它在您保存流配置时将 env-var 替换为其值,那么它将硬编码为该值,并且您将来无法更改 env-var。 这就是为什么保存的配置仍然有$(MQTT_PASSWORD)

运行时在启动时创建相关节点的实例时,会负责替换 env-var 的当前值。

这是我的 flow.cred 文件。 引用的节点是 MQTT 配置节点。 它似乎有效:

{
    "edf18224.a363e": {
        "user": "${MQTT_USER}",
        "password": "${MQTT_PASSWORD}"
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM