1

客户端需要以下格式的 JSON 字符串

descriptions": [
      {
        "lang": "string",
        "size": "string",
        "text": "string",
        "type": "string"
      }
    ],

,但收到的 JSON 有点不同 - 如下所示

"descriptions":{
  "desc":[
{
      "size":string,
      "lang":"string",
      "type":"string",
      "content":"string"
    }
  ]
},

无论如何要忽略“desc”部分 - 例如。使用 JSON 注释?
上下文:我通过 REST API 调用传递此 JSON,它将在接收端自动转换为 Java 对象。

4

4 回答 4

0

您只需构造所需的对象:

var clientDescriptions = descriptions.desc.map(function(d) {
   size: d.size,
   type: d.type,
   lang: d.lang,
   content: d.text
});
于 2018-09-12T01:28:25.050 回答
0

如果您使用 Gson,则可以为您的 Java 模型使用自定义 JsonDeserializer / JsonSerializer。然后,您的模型对象和 API 可以干净利落地实现,而无需处理不同的 json 结构。

于 2018-09-12T01:54:59.230 回答
0

一个简单的

descriptions = descriptions.desc;

会做。

于 2018-09-12T01:25:14.223 回答
-1

以我个人的经验,后端有一个bug,必须解决,一定不能发送格式错误的数据。从长远来看,这是最好的解决方案。

于 2018-09-12T01:35:16.357 回答