在两个 ASP.NET 核心 API 之间传输数据结构的最佳方式
Best way to transfer data struct between two ASP.NET Core API's
我有两个 API。 API-1 生成了一个巨大的数据集,类似于
Dictionary<string,Dictionary<string<List<object>>> data_
我的最终目标是找到最有效的方法将此数据传输到 API-2 反序列化它并 return 响应 API-1。
我找到了两种方法:
- 从容器中生成JSON并将JSON发送到API-2。如果数据太大,我们就会遇到问题。
- 将JSON保存到文件并发送文件API-2。这里我们遇到了一个问题,因为文件的大小通常会达到 400-500 MB。
所以我的问题是,有没有办法直接将数据结构传输到 API-2,而无需 JSON serialization/deserialization.
有没有办法像字节一样发送我的 data_ 容器,并在 API-2 中序列化它?
根据您的描述,这种在一次 API 调用中发送所有数据的方法似乎不适合这里。
我建议您将数据分块发送到 API-2。
在 API-1 中,您将在数据库中保存带有 [sent/not 已发送] 指示的记录。
然后你应该循环遍历记录,获取它们的块,并将块发送到 API-2。
当您从 API-2 获得成功时,您应该在 API1 DB 中将记录标记为“已发送”。
我有两个 API。 API-1 生成了一个巨大的数据集,类似于
Dictionary<string,Dictionary<string<List<object>>> data_
我的最终目标是找到最有效的方法将此数据传输到 API-2 反序列化它并 return 响应 API-1。
我找到了两种方法:
- 从容器中生成JSON并将JSON发送到API-2。如果数据太大,我们就会遇到问题。
- 将JSON保存到文件并发送文件API-2。这里我们遇到了一个问题,因为文件的大小通常会达到 400-500 MB。
所以我的问题是,有没有办法直接将数据结构传输到 API-2,而无需 JSON serialization/deserialization.
有没有办法像字节一样发送我的 data_ 容器,并在 API-2 中序列化它?
根据您的描述,这种在一次 API 调用中发送所有数据的方法似乎不适合这里。
我建议您将数据分块发送到 API-2。
在 API-1 中,您将在数据库中保存带有 [sent/not 已发送] 指示的记录。 然后你应该循环遍历记录,获取它们的块,并将块发送到 API-2。 当您从 API-2 获得成功时,您应该在 API1 DB 中将记录标记为“已发送”。