首页 > 解决方案 > 使用wiremock中请求url的查询参数从jsonBody获取特定对象

问题描述

如果 1) 我需要传递我的查询 2) 查询应该用于从一组对象中发送一个对象,那么映射对象应该是什么

 curl -X POST --data '
{ "request": 
           { "url": "/jsons?id=someID", "method": "GET" },
 "response": 
           { "status": 200, "jsonBody": {"objs":[{"id":"1","name":"abc"},{"id":"2","name":"cde" 
                                                 {"id":"someID","name":"efg"}]}}}
'http://localhost:8080/__admin/mappings/new

我希望上面的 url 只返回 {"id":"someID","name":"efg"}

我应该如何更改上述映射以获得所需的输出

标签: wiremockwiremock-standalone

解决方案


响应应该有一个带有查询参数的特定获取请求的对象,而不是对象数组。

对于您的示例,它应该是这样的

curl -X POST --data '
{ "request": 
{ "url": "/jsons?id=someID", "method": "GET" },
"response": 
{ "status": 200, "jsonBody": {"objs": {"id":"someID","name":"efg"}}}}
'http://localhost:8080/__admin/mappings/new

推荐阅读