java REST API设计和更改“合同”?
我正在设计RESTful API。结果将以JSON对象的形式出现。我不需要将POJO类中的所有字段发送到客户机,因此我应该定义某种“契约”
假设我有一个属性类,我为它定义了id、名称和地址。稍后,我可能想将地址更改为geoData,而不影响客户
有什么优雅的方法(图案)可以做到这一点吗
你可以在下面搜索框中键入要查询的问题!
我正在设计RESTful API。结果将以JSON对象的形式出现。我不需要将POJO类中的所有字段发送到客户机,因此我应该定义某种“契约”
假设我有一个属性类,我为它定义了id、名称和地址。稍后,我可能想将地址更改为geoData,而不影响客户
有什么优雅的方法(图案)可以做到这一点吗
# 1 楼答案
为REST设计创建版本控制。当您开始创建新的实现时,使用新的URI来定义它。 例如,使用类似参数创建新URI,但版本不同:
通过这样做,客户机仍然能够检索具有旧实现的用户,而不会出现任何问题。但是,当您决定再次更改实现时,最好冻结旧版本的API(例如,在实现v3 API时,您应该通知客户端旧版本1 API将不再受支持)
更多信息可在此处找到:
How to version REST URIs
Versioning restful services