更新REST API的响应结构

时间:2015-03-24 09:42:08

标签: json rest jsonpath

这个问题更多的是寻求针对向后兼容性的固有编程挑战的正确方法。我试图了解这是否违反了现有REST API的向后兼容性。

如果您认为这不是正确的地方,请在评论中提及我可以提出此问题的正确论坛。

我有一个REST API,它返回以下响应:

[
   {
      "name":"accountID",
      "value":500
   },
   {
      "name":"accountType",
      "value":"PREMIUM"
   },
   {
      "name":"supportType",
      "value":"Phone"
   }    
]

现在由于最近的一些更新,我必须在API中发送更多信息,更新后的响应如下:

[
   {
      "name":"accountID",
      "value":500,
      "encrypted":false
   },
   {
      "name":"accountType",
      "value":"PREMIUM",
      "encrypted":true
   },
   {
      "name":"supportType",
      "value":"Phone",
      "encrypted":false
   }    
]

如果我打破任何向后兼容性,请帮助我理解。据我所知,只有当我从现有的JSON响应中删除某些东西而不是通过在JSON中添加额外内容时,才会打破向后兼容性。

由于大多数JSON库提供了忽略无法识别的属性的功能。

即使我们使用jsonpath一次浏览对象一个节点,如果有人不理解新属性,也应该没问题。

0 个答案:

没有答案