REST api: 如何确保客户端已收到所有数据?

REST api: How can I make sure that client has received all data?

我正在使用 .NET Framework 4.5.1 和 C# 开发 ASP.NET Web Api 2.2 应用程序。

我有一个带有此签名的方法:

[HttpGet]
public IEnumerable<Models.ExternalCodes> GetCodes(
    ExternalCodesQueryData queryData)
{
    // ...
}

有什么方法可以确保客户端已经收到所有数据吗?

也许 HTTP 协议有一些允许这样做的机制。可能是客户端接收到的数据损坏了,你的客户端无法读取。

你控制客户端吗?
如果是这样,您只需让客户端使用 "Hey, the data you sent over arrived in one piece."

回调到 webapi

尽管此机制非常用处有限。 HTTP 通过具有容错和纠错功能的 TCP 发送。因此,除非发生灾难性事件,例如连接意外关闭,否则您可以假设所有数据都是一体到达的。