REST API - 放置方法最佳实践

时间:2012-07-11 18:29:39

标签: api language-agnostic asp.net-web-api

我正在使用ASP.NET MVC Web API堆栈设计一个restful API。我允许用户使用相关的HTTP动词创建/更新/删除记录。我接受XML和JSON内容类型。我目前正在我的第一个端点上设计put(更新)方法,并遇到了一个问题:

我想知道通过API更新时null /空字段的最佳实践是什么。如果null / empty字段表示消费者忽略了该字段并且不希望它更新,或者该字段可能以前有过或者之前没有值,那么当前该字段是否应该具有值?

具体来说,当一个字段有数据并且发送带有null / empty数据的更新时,该字段应该a)忽略b)在DB中更新和清空

我认为这是很多东西,但我找不到任何实质性信息(主要是由于缺乏适当的搜索词)

1 个答案:

答案 0 :(得分:2)

已为部分更新创建了动词PATCH

我会使用PUT进行全面更新,将PATCH用于部分更新。如果我没记错的话,支持PATCH就在ASP.NET Web API RC中。