C# ASP.NET Web API:从添加新记录的API返回什么?
假设我有一个POST API,它在一个名为Product的表中添加了一个记录。成功插入记录后,API应在响应体中从以下内容之一返回什么 A.表中插入的产品Id B.整个记录以及产品Id 推荐的最佳实践是什么 我见过一些实例,其中开发人员返回的整个对象类似于插入的记录(如caseB)。当API消费者可能只需要产品Id时,返回整个对象似乎是在浪费带宽吗C# ASP.NET Web API:从添加新记录的API返回什么?,c#,asp.net,post,asp.net-web-api,C#,Asp.net,Post,Asp.net Web Api,假设我有一个POST API,它在一个名为Product的表中添加了一个记录。成功插入记录后,API应在响应体中从以下内容之一返回什么 A.表中插入的产品Id B.整个记录以及产品Id 推荐的最佳实践是什么 我见过一些实例,其中开发人员返回的整个对象类似于插入的记录(如caseB)。当API消费者可能只需要产品Id时,返回整个对象似乎是在浪费带宽吗 A和B的利弊是什么?非常感谢您提供的任何资源来解释这些事情。正如您自己和评论中所指出的,您几乎有两种选择 某种形式的确认信息 包含插入信息的结果集
A和B的利弊是什么?非常感谢您提供的任何资源来解释这些事情。正如您自己和评论中所指出的,您几乎有两种选择
返回插入的数据的优点是可以检查数据是否正确 您已经基本上解释了B的优点和缺点,都是关于web api调用的需求。您将根据requirementsEntire记录是否常见以及包含将获取该记录的URL的位置标头来决定返回内容。返回内容取决于API客户端的要求和API提供程序的首选项。产品创建后,您是否有其他需要退回的物品?客户的要求是什么?另外,如果您只返回id,那么客户端将不得不进行另一个API调用以获取详细信息,这也是一个常见的“201 Created”响应,并且非常合适。它应该包含一个位置头,指向可以在其中发出GET请求以检索新资源的URL。Web API提供了一个CreatedAtRoute帮助器方法来完成此操作。