是否可以使用JSONObject的“ put”方法并保留大写的参数名称?

时间:2019-03-23 00:16:46

标签: java json

从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"
               }
             ]
}

0 个答案:

没有答案