2
我正在嘗試使用獨立模式創建API模擬。響應主體依賴於請求主體中的屬性。在WireMock中請求正文匹配(非JSON/XML)
隨着JSON,我能夠做到。下面是示例映射:
{
"request":{
"method":"POST",
"bodyPatterns":[
{
"matchesJsonPath":"$.somekey.subkey[?(@.attribute == 'VALUE_123')]"
}
]
},
"response":{
"status":200,
"bodyFileName":"res.dat",
"headers":{
"Content-Type":"application/x-proto;charset=UTF-8"
}
}
}
但是我的主要要求是應對谷歌protobuf的,我試圖用文本格式代替它的是褻慢會用嘲笑的API響應。因此,請求文件爲文本格式,並且沒有任何JSON驗證(如雙引號或每行末尾的逗號等)。
我發現使用JSON路徑,wiremock無法匹配請求主體由於格式不正確。 例如,像這樣的請求:的
{
animal {
type {
key1: "value"
key2: value2
}
}
}
代替
{
"animal":{
"type":{
"key1":"value",
"key2":"value2"
}
}
}
比方說key1
= value1
應匹配和response1.json
應返回時,或者當key1
= someOtherValue
,然後response2.json
應該返回。 是的,鍵是類型的一部分,類型是動物的一部分。我怎樣才能實現這個請求身體匹配?
好吧,我只是想通了這一點以後。感謝您的迴應。 – xploreraj
這是另外一個: ''bodyPatterns「:[{」contains「:」type:CREDIT「 }]' – xploreraj