以下属性可用于配置 Node-RED。
在作为普通应用程序运行时,它会从设置文件加载其配置。有关设置文件及其位置的更多信息,请阅读 本指南。
当作为 嵌入式应用程序 运行时,配置选项通过对 RED.init()
的调用传入。然而,当以此模式运行时,某些属性将被忽略,并留给嵌入应用程序来实现。
flows_<hostname>.json
$HOME/.node-red
nodes
目录。此属性允许搜索额外的目录,以便节点可以在 Node-RED 安装结构之外安装。默认值: $HOME/.node-red/nodes
0.0.0.0
-
所有 IPv4 接口。
仅适用于独立模式。
1880
。
仅适用于独立模式。
false
,所有管理员端点将被禁用。这包括 API 端点和编辑器 UI。要仅禁用编辑器 UI,请参见下面的 disableEditor
属性。默认值: /
adminAuth
。
在编辑器 UI 上启用 HTTP 基本身份验证:
httpAdminAuth: {user:"nol", pass:"5f4dcc3b5aa765d61d8327deb882cf99"}
pass
属性是实际密码的 md5 哈希。可以使用以下命令来生成哈希:
node -e "console.log(require('crypto').createHash('md5').update('YOUR PASSWORD HERE','utf8').digest('hex'))"
仅适用于独立模式。
httpAdminMiddleware: function(req,res,next) {
// 对请求执行任何处理。
// 确保在请求需要传递时调用 next()
}
false
,所有基于节点的 HTTP 端点将被禁用。默认值: /
httpAdminAuth
。httpAdminRoot
和 httpNodeRoot
设置的值。仅适用于独立模式。
true
,则防止运行时提供编辑器 UI。管理员 API 端点仍然处于活动状态。默认值: false
。/
提供。当使用此属性时,必须同时使用 httpAdminRoot
以使编辑器 UI 在除 /
之外的路径上可用。
此属性也可以设置为数组,以支持多个静态目录,每个目录都有自己的一组选项。选项包括用于提供内容的本地目录的路径、用于提供内容的根 URL、可选的自定义中间件函数和可选的 CORS 配置。
例如:
httpStatic: [
{
path: '/opt/static/',
root: '/private/',
middleware: myCustomHttpMiddleware,
cors: {
}
}
]
仅适用于独立模式。
httpAdminAuth
。httpNodeMiddleware: function(req,res,next) {
// 对请求执行任何处理。
// 确保在请求需要传递时调用 next()
// 到相关的 HTTP 输入节点。
}
默认级别是 info
。对于具有有限闪存存储的嵌入式设备,您可能希望将其设置为 fatal
以最小化写入“磁盘”的次数。
允许/拒绝列表选项可用于限制运行时将安装/加载哪些模块。它可以使用 *
作为通配符,匹配任何内容。
externalModules: {
autoInstall: false,
autoInstallRetry: 30,
palette: {
allowInstall: true,
allowUpload: true,
allowList: [],
denyList: []
},
modules: {
allowInstall: true,
allowList: [],
denyList: []
}
}
['subflows', 'common', 'function', 'network', 'sequence', 'parser', 'storage'],
注意:在用户创建子流程之前,子流程类别将是空的,并且在调色板中不可见。
可以通过使用以下设置对象来更改编辑器的主题。所有部分都是可选的。
editorTheme: {
page: {
title: "Node-RED",
favicon: "/absolute/path/to/theme/icon",
css: "/absolute/path/to/custom/css/file",
scripts: [ "/absolute/path/to/custom/script/file", "/another/script/file"]
},
header: {
title: "Node-RED",
image: "/absolute/path/to/header/image", // 或 null 以移除图像
url: "http://nodered.org" // 可选 URL,使头部文本/图像成为此 URL 的链接
},
deployButton: {
type:"simple",
label:"保存",
icon: "/absolute/path/to/deploy/button/image" // 或 null 以移除图像
},
menu: { // 通过 ID 隐藏不需要的菜单项。请参见 packages/node_modules/@node-red/editor-client/src/js/red.js:loadEditor 以获取完整列表
"menu-item-import-library": false,
"menu-item-export-library": false,
"menu-item-keyboard-shortcuts": false,
"menu-item-help": {
label: "替代帮助链接文本",
url: "http://example.com"
}
},
tours: false, // 禁用新用户的欢迎之旅
userMenu: false, // 即使启用了 adminAuth,也隐藏用户菜单
login: {
image: "/absolute/path/to/login/page/big/image" // 一个 256x256 的图像
},
logout: {
redirect: "http://example.com"
},
palette: {
editable: true, // *已弃用* - 请使用 externalModules.palette.allowInstall
catalogues: [ // 替代调色板管理器目录
'https://catalogue.nodered.org/catalogue.json'
],
theme: [ // 重写节点颜色 - 规则根据类别/类型通过 RegExp 检测。
{ category: ".*", type: ".*", color: "#f0f" }
]
},
projects: {
enabled: false // 启用项目功能
},
theme: "", // 为编辑器选择一个颜色主题。请参见 https://github.com/node-red-contrib-themes/theme-collection 以获取可供选择的主题集合
codeEditor: {
lib: "ace", // 选择编辑器使用的文本编辑组件。默认值为 "ace",但可以设置为 "ace" 或 "monaco"
options: {
// 以下仅适用于设置为 "monaco" 的编辑器
theme: "vs", // 为文本编辑器组件选择一个颜色主题。必须与 packages/node_modules/@node-red/editor-client/src/vendor/monaco/dist/theme 中的主题文件名匹配
}
},
mermaid: {
theme: "default" // 为 Mermaid 图表和制图工具选择一个颜色主题。必须与 https://mermaid.js.org/config/theming.html#available-themes 中的主题名称匹配
}
},
ui : { path: “mydashboard” },
任何节点类型都可以在文件中定义自己的设置。
functionGlobalContext: { osModule:require('os') }
可以在函数节点中访问为:
var myos = global.get('osModule');
context
的子属性进行访问:
context.global.foo = "bar"; var osModule = context.global.osModule;这种方法仍然被支持,但被弃用,推荐使用
global.get
/global.set
函数。使用此方法存储的任何数据将不会在重启后保留,并且不会在侧边栏上下文查看器中可见。
true
,则函数节点的设置选项卡将允许添加额外的模块,这些模块将变得可用于函数。有关更多信息,请参见 编写函数。默认值: false
。版权所有 OpenJS Foundation 和 Node-RED 贡献者。保留所有权利。OpenJS Foundation 拥有并使用注册商标。有关 OpenJS Foundation 的商标列表,请参阅我们的 商标政策 和 商标列表。未在 OpenJS Foundation 商标列表 中列出的商标和徽标是其各自持有者的商标™或注册商标®。使用它们并不意味着与它们有任何关联或认可。
OpenJS Foundation | 使用条款 | 隐私政策 | OpenJS Foundation 章程 | 商标政策 | 商标列表 | Cookie 政策