我有以下JSON正文,其中postingDate
是参数。有人可以帮我解决一个Java代码,该代码会将参数postingDate替换为15112019
之类的值。我正在通过String变量中的java代码获取以下JSON(此JSON由开发人员提供,他们使用邮递员进行测试)
{
"submissionRequestDTO": {
"applicationRequestDTO": {
"selectedProductDTOs": [
{
"allowedProductClass": "LOANS",
"applicationRequestType": "NEW",
"productGroupCode": "ABADB",
"productGroupName": "Home Loan",
"productGroupType": "LOAN"
}
]
},
"submissionDate": {
"sqlDate": 1525026600,
"dateString": "{{postingDate}}",
"sqltimestamp": 1525026600
},
"submissionReceiptMode": "FF",
"submissionValueDate": {
"sqlDate": 1525026600,
"dateString": "{{postingDate}}",
"sqltimestamp": 1525026600
},
"submittedBy": "user",
"targetUnit": "PP"
}
} }
我要发送发布请求的代码
> Response rs = given().contentType(ContentType.JSON)
> .auth().basic("ID", "PWD").
> header("Content-Type", "application/json").
> when().log().all()
> .body(JiraApiPractice.ReadJSONPayloadRequest().toString()). //Reading the payload
> post("submissionDrafts").
> then().
> extract().response();
附言我知道String替换,但是我想知道是否有任何方法可以通过Rest Assured做到这一点。
最佳答案
最简单的选择是在拉入正文时调用.replace(“ {{postingDate}}”,your_value)。
Response rs = given().contentType(ContentType.JSON)
.auth().basic("ID", "PWD").
header("Content-Type", "application/json").
when().log().all()
.body(JiraApiPractice.ReadJSONPayloadRequest().toString().replace("{{postingDate}}", your_value))
.post("submissionDrafts").
then().
extract().response();
如果您认为将添加更多这样的内容,那么可能值得看一下模板解决方案,可能是这样:
https://github.com/HubSpot/jinjava
PS,刚刚看过您的“ PS”,我不相信“确保放心”的人对此图书馆拥有任何本机。