我如何 seperate/split 节点红色中的字符串消息的一部分

How can i seperate/split part of string messege in node red

我收到了这条消息:

 "data: "{"cmd":"gw","seqno":515816,"EUI":"000DB53113683569","ts":1510584501221,"fcnt":1,"port":2,"freq":868100000,"toa":1482,"dr":"SF12 BW125 4/5","ack":false,"gws":[{"rssi":-71,"snr":9.5,"ts":1510584501221,"time":"2017-11-13T14:48:21.218869Z","gweui":"B827EBFFFF6A14DD","lat":50.0751806,"lon":14.4022641}],"bat":255,"data":"0002560000000000000000"}"" 

我需要收起 "data: " 和最后的“

如果我使用 JSON 节点,我只需要 JSON 消息,因为 "data: "

您可以使用函数节点来截断字符串。像这样:

msg.payload = msg.payload.substring(7,msg.payload.length - 1);
return msg;

然后将其连接到 JSON 节点。

作为替代方案,您可以添加缺少的 {},然后添加 JSON.parse。

var string = "{" + msg.payload +"}"
var dataObject = JSON.parse(string)

msg.payload = dataObject.data
return msg