协议转换脚本问题

Blade 未结 1 9

一、该问题的重现步骤是什么?

1. 最近碰到一个协议转换的问题。原数据是:{"payload":"{\"3000\":\"898\",\"3001\":\"798\",\"timestamp\":1732246420968}"},我参照物联网平台已有的项目试着写转换的脚本:

{

    "id": "1",

    "version": "1.0",

    "method": "thing.event.property.post",

    "params": {

    # for(x in body) {

      "${x.key}": ${x.value}${xLP.last?'':','}

# }

    }

}

能转成带"payload":{} 包裹的json数据,如下图二,但是我想去掉payload,转成最终的:

{  "id": "1",  "version": "1.0",  "method": "thing.event.property.post",  "params": {    "3000": "898",    "3001": "798",    "timestamp": 1732246420966  }}

请问上面的我的脚本应该怎么修改?

image.png


image.png


二、你期待的结果是什么?实际看到的又是什么?

期待的结果:对beetl脚本不太熟,想问下上门的脚本应该怎么修改。


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

正在使用的产品:BladeX物联网平台

版本:1.2.0

操作系统:Windows11


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

1条回答
  • x in body.payload


    这样写试试

    0 讨论(0)
提交回复