Pact 压缩JVM闭合数组
我对pact jvm consumer中的closeArray有问题 如果Json是这样的,那么 “DslPart imeiResults=new PactDslJsonBody()”-无法构造语句Pact 压缩JVM闭合数组,pact,pact-jvm,Pact,Pact Jvm,我对pact jvm consumer中的closeArray有问题 如果Json是这样的,那么 “DslPart imeiResults=new PactDslJsonBody()”-无法构造语句 { "Car": { "Price": 123, "Features": [ "rain sensor", "cruise control" ], "Id": "6500" } } 我试着这样做:
{
"Car": {
"Price": 123,
"Features": [
"rain sensor",
"cruise control"
],
"Id": "6500"
}
}
我试着这样做:
DslPart etaResults = new PactDslJsonBody()
.object("Car")
.integerType("Price",123)
.array("Features")
.stringValue("rain sensor")
.stringValue("cruise control")
.closeArray()
.stringValue("Id","6500")
.closeObject()
.asBody();
但这不起作用,例如.closeArray()不返回PactDslJsonBody,而是返回DslPart,所以在.closeArray()之后永远不能有任何内容?我不明白,有人能告诉我如何正确操作吗 我猜
closeArray
之后的stringValue
不起作用
遗憾的是,当使用array
函数创建一个数组时,它实际上会导致一些混乱。需要做的是使用asBody
函数将DslPart
转换回PactDslJsonBody
。因此,您的示例应该是:
DslPart etaResults = new PactDslJsonBody()
.object("Car")
.integerType("Price",123)
.array("Features")
.stringValue("rain sensor")
.stringValue("cruise control")
.closeArray()
.asBody()
.stringValue("Id","6500")
.closeObject();
现在,我们知道这是令人困惑的,试图让体验更好。希望这能有所帮助。好的,我可以让这个例子起作用。但现在我又被卡住了。您是否可以从以下Json帮助创建DslPart:{“库存”:[{“汽车”:{“变速箱”:“自动”,“产品ID”:30212},“相机”:{“EndPrice”:1235,“条件”:[“FaultyButtons”,“FaultyCasing”],“ModelId:“650”}}],“IsSuccess:“true”,“Info:“Ok”}您遇到了什么问题?我不想为你做这项工作。请试着回答一个实际问题。最好是开始一个新的问题。