从Java测试API时,我正在使用JSONObject'put'方法将条目添加到HTTP请求的JSON主体中。我传递给'put'方法的值包含其他对象,其中一些具有大写名称的属性(请参见下面的示例)。我知道实例变量应该具有Camel大小写,但我在players数组中接收的winMethod对象不符合此要求。
当我将对象传递给“ put”方法时,它似乎会将属性名称转换为小写(即,从“已启用”更改为“已启用”)。由于此正文已发送到期望大写那些属性的外部API,所以失败了,因为它无法识别那些元素。
有什么办法可以保留传递给'put'方法的参数的大小写?
我正在向JSON正文中添加元素,如下所示:
JSONObject jsonBody = new JSONObject();
jsonBody.put("actionType", "Start");
jsonBody.put("playerCount", 1);
jsonBody.put("players", playersArray);
这是正文的预期方式(请注意大写的有效日期和启用字段):
{
"actionType": "Start",
"playerCount": 1,
"players": [
{
"gameType": "Cheque",
"winMethods": [
{
"winMethod": "SEARCH",
"EffectiveDate": "2019-03-22 10:22:22",
"Enabled": "Y"
}
],
"playerId": "88881"
}
]
}