作者:萝莉控的小潴_515 | 来源:互联网 | 2023-09-24 14:22
我目前有一个传入的.json
文件,我正在通过映射器捕捉路由。在该映射器快照中,我需要获取名称为bob.jones
,eric.smith
等的数组,并将字符串@email.com
添加到每个名称中。模式中这些名称的路径为:
jsonPath($,"$response.entity[*].target.name")
结构如下:
{
"entity": [
{
"target": {
"name": "bob.jones"
}
},{
"target": {
"name": "eric.smith"
}
},...
]
}
仅映射路径jsonPath($,"$response.entity[*].target.name")
将传递名称并输出bob.jones
和eric.smith
。我尝试在数组上使用.concat()
,但所做的只是将@email.com
添加到列表中,因此得到了bob.jones,eric.smith,@email.com
。我试图找出一个可以在不更改其结构的情况下编辑数组项的表达式。
根据您提供的JSON路径-jsonPath($,"$response.entity[*].target.name")
-我创建了以下JSON。
{
"response": {
"entity": [
{
"target": {
"name": "bob.jones"
}
},{
"target": {
"name": "eric.smith"
}
}
]
}
}
然后将其放在JSON生成器中,以便可以将其作为文档获取。请参考以下屏幕截图。
如果所需的输出如下:
然后在映射器中使用以下表达式。
$response.entity.map(e => e.target.name + '@email.com')
否则,如果您需要的输出如下:
然后在映射器中使用以下设置。