跳到主要内容

数据格式化-JSON处理

JSON 和 字符串 之间互相转换

问题背景

JSON 字符串 和 JSON 对象 之间互相转换

解决方案

使用 JSON 处理 节点进行 JSON 字符串 和 JSON 对象 之间的转换

示例

json-format

示例JSON

[{"id":"634256b7.2d6818","type":"inject","z":"869ba73b7f3d989b","name":"JSON String","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"a\":1}","payloadType":"str","x":350,"y":220,"wires":[["a2fe0fc8.095e1"]]},{"id":"a2fe0fc8.095e1","type":"json","z":"869ba73b7f3d989b","name":"","property":"payload","action":"","pretty":false,"x":510,"y":220,"wires":[["9a4ce2b8.47698"]]},{"id":"9a4ce2b8.47698","type":"debug","z":"869ba73b7f3d989b","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":670,"y":220,"wires":[]},{"id":"80032e2.7c92cd","type":"inject","z":"869ba73b7f3d989b","name":"Object","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"{\"a\":1}","payloadType":"json","x":330,"y":380,"wires":[["cd40a0f4.4f5ac"]]},{"id":"cd40a0f4.4f5ac","type":"json","z":"869ba73b7f3d989b","name":"","property":"payload","action":"","pretty":false,"x":510,"y":380,"wires":[["478b4106.4fd7c"]]},{"id":"478b4106.4fd7c","type":"debug","z":"869ba73b7f3d989b","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":670,"y":380,"wires":[]},{"id":"9c4b22185fc94bd9","type":"comment","z":"869ba73b7f3d989b","name":"JSON格式字符串转为JSON对象:字符串->JSON","info":"","x":460,"y":160,"wires":[]},{"id":"09bfe02b50eea639","type":"comment","z":"869ba73b7f3d989b","name":"JSON 对象转换为JSON格式字符串:JSON -> 字符串","info":"","x":470,"y":340,"wires":[]}]

运行结果

在示例中,第一个流注入 JSON 字符串 "{"a":1}",JSON 节点会将其转换为等效的 JavaScript 对象。

第二个流则执行相反的操作,注入对象 { a: 1 } 并将其转换为 JSON 字符串

默认情况下,JSON 处理 节点会检测要转换的内容。它还可以配置为确保属性为指定类型。例如,如果您的流可以接收 JSON 或对象,则可以配置 JSON 处理 节点以确保属性为对象。

json-format-result