从 NODE-RED 字符串中提取

Extract from a NODE-RED string

我有我的 NODE-RED 模式:

以下字符串结果来自我的 "Function" 节点我的节点:

msg.payload : string[63]
"{"random":{"date":"22:55","random":21},"time":{"time":"22:52"}}"

这是我的代码 "Function Node":

msg.payload.random=context.global.randomandtime;
msg.payload.time=context.global.time;

return msg;

我需要像这样输入 "part of the string"(不是全部)=>{"date":"22:55","random":21} 并将其像网页一样显示在我的浏览器中,但不使用 html 标签。

像这样:

22:55

21

欢迎提供任何帮助。


我已经添加了模板(Mustache),我正准备将数据添加到其中,(注意:http 响应已经在方案中但未在此处显示)

我正在尝试将数据带到这里(模板)。但是我得到了错误。

Mustache 模板正文是:

这是有效负载:{{#payload.randomandandtime.random}} !

但是我已经回复了这个错误:

2017-5-18 16:18:00node:Mustachemsg:字符串[56]

"Unclosed section "payload.randomandandtime.random" 在 59"

在浏览器中我得到

502 错误网关:注册端点无法处理请求。

即使我只改变它payload.randomandandtime我也会变空:

payload.randomandandtime

在浏览器和控制台中:

收到的消息:(空) 这是有效负载:!

最后我就这样解决了。 我把所有的都放在一个全局变量而不是 2 个全局变量中。 我将它传递给 mustache 模板,在 Mustache 中我使用上下文来获取它。

总体方案:

然后在恢复数据中:

msg.payload = context.global.get("randomtime");

在我的小胡子里:

`{{#payload.random}}
Last random number request returned {{&payload.random}}, which was received 
at {{&payload.randomtime.times}}{{/payload.random}}
{{/payload}}`

它的结果是一个不使用 HTML 的网络服务,这是:

url https://....../page

"Time last server time request received at 13:14 Last random number request returned 94, which was received at 13:14"