@yuliqi/node-red-contrib-qval 0.1.0

Validation of JavaScript objects with the AJV library.

npm install @yuliqi/node-red-contrib-qval

qval — 对象校验(可视化规则 / 可选不中断 / 结果对象输出)

qvalmsg.<data>(默认 msg.payload)中的对象执行规则校验,支持可视化配置与批量编辑;内置 Email/URL/IPv4/IPv6/UUID/日期/主机名等格式校验,长度/数值/元素个数边界、集合包含/排除、字段相等等。


主要能力

  • 规则来源:节点内规则 + (可选)msg/flow/global 的传入规则
  • 来源策略:替换 replace / 追加 merge
  • 额外属性:允许 / 禁止额外字段(additionalProperties
  • 失败行为:可选 抛错中断不中断
  • 输出:仅写入结果对象到可配置路径(默认 msg.validation
    { "ok": true|false, "errors": [ "..." ], "details": [ /* Ajv 错误 */ ] }
    

> 不再写入 `msg.qvalValid` / `msg.qvalErrors`,也不再提供“错误数组独立路径”。

---

## 运行时状态

* 通过:绿色 · 已通过
* 未通过:黄色 · 未通过(N)
* 异常:红色 · 异常(配置/数据结构错误)

---

## 批量编辑(JSON)

```json
[
  {"property":"email","validator":"required"},
  {"property":"email","validator":"email","error":"邮箱格式不正确"},
  {"property":"age","validator":"minimum_number","value":18}
]
```

---

## 小贴士

* 对象来源路径可写深层:如 `payload.user`
* 结果对象路径支持 `msg` / `flow` / `global`,也支持深层:如 `result.validation`
* 路径中若写入 `msg.xxx` 会在保存时自动规范化为 `xxx`

Node Info

Version: 0.1.0
Updated 23 hours ago
License: MIT
Rating: 5.0 1

Categories

Actions

Rate:

Downloads

156 in the last week

Nodes

  • qval

Keywords

  • node-red
  • qval
  • ajv
  • validation
  • schema
  • jsonschema

Maintainers