MuleSoft知识总结-11.Mule基本组件(Transform Message)
前言
前端对Mule接口发出请求后,Mule APP对服务器进行访问,服务器提供数据给Mule APP。但这些数据是后端的原生数据,这些数据的格式也许并不是前端想要的。可以使用Mule组件Transform Message对数据进行包装和处理,然后在返回给前端。
后端返回的数据格式
[
{
"eName": "zhangsan",
"eAge": "20",
"eSex": "man",
"cGroup": "afl",
"cTeam": "mulesoft",
"id": "12345678",
"state": "liaoning",
"email": "san.b.zhang@acc.com",
"city": "dalian",
"phone": "12345678901"
},
{
"eName": "lisan",
"eAge": "20",
"eSex": "man",
"cGroup": "afl",
"cTeam": "se",
"id": "12345679",
"state": "liaoning",
"email": "san.a.li@acc.com",
"city": "shenyang",
"phone": "12345678902"
},
{
"eName": "wangwu",
"eAge": "20",
"eSex": "woman",
"cGroup": "sap",
"cTeam": "sa",
"id": "12345680",
"state": "sichuan",
"email": "wu.a.wang@acc.com",
"city": "chengdu",
"phone": "12345678903"
}
]
前端想要的数据格式
[{
"number": "12345678",
"name": "zhangsan",
"age": "20",
"sex": "man",
"group": "afl",
"team": "mulesoft",
"contact": {
"Email": "san.b.zhang@acc.com",
"phone": "12345678901"
},
"address": {
"state": "liaoning",
"city": "dalian"
}
}]
Define metadata
- 首先我们要定义metadata,在src/main/resources建立metadata包,在metadata下建立employees.json
- 后端返回的数据粘贴到employees.json中
- 在以相同的方式创建返回给前端的数据格式
Transform Message
- 在employeeapi-sub中,使用Mule Palette,选择Core下的Transform Message组件放到Sub Flow中。 2.点Transform Message组件左侧input中的Define metadata,进入弹出窗点击Add,为类型命名employees,在Type中选择JSON,选择Example。
- 点击…选择之前写好的JSON文件,进行添加
- 以相同方式在右侧output中添加数据类型。
- 对两边的类型进行拖拽匹配
- 重启Mule APP,使用PostMan进行访问,现在的数据格式就是前端想要的。
