JSON 通过 HTTP 传输的可靠性如何?

How reliable are JSON transfers over HTTP?

JSON 响应是否因服务器错误而不完整,或者它们被设计为大声失败?通过 JSON 传输非常大的数据集是否有任何特别的问题,是否可以减轻这些问题?我愿意接受任何建议。

通过 HTTP 传输 JSON 与通过 HTTP 传输任何字节没有什么不同。

是的,服务器错误可能会导致传输不完整。想象一下在传输中途关闭服务器。任何网络传输都是如此。如果出现这样的错误,您的客户将大声失败。您可能会收到连接超时或错误状态代码。不管怎样你都会知道的。

您可以通过 HTTP JSON 传输的数据量没有实际限制。我在单个 HTTP 请求中传输了超过 1GB 的 JSON 数据。进行大型传输时,您要确保在服务器端使用流式处理 API。也就是说,在从数据库中读取数据时写入 HTTP 响应的输出流,而不是将数据从数据库中完全读入 RAM,然后将其编码为 JSON 并将其写入输出。这样您的客户端可以立即开始处理响应,而且您的服务器不会 运行 内存不足。