从Server向移动客户端发送文件的最佳做法是什么?

时间:2018-03-22 05:03:44

标签: c# mobile blob binary-data asp.net-core-webapi

我使用 SQL Server ASP.Net Core WebAPI 作为我的后端。我想从我的服务器向移动应用程序发送文件。

这样做的最佳做法是什么?

将文件作为字节数组发送。移动应用程序必须编写业务逻辑以根据内容类型处理文件并在应用程序中显示。

OR

根据文件的内容类型将BLOB转换为实际文件,并共享移动应用程序的服务器路径。移动应用程序可以下载和显示内容。 注意:何时删除存储在服务器上的实际文件是一个问题。

哪一个是最好的?还有其他建议吗?

先谢谢。

1 个答案:

答案 0 :(得分:0)

首先,文件应该在您的数据库或文件系统中,而不是两者。如果你打算从数据库中查询blob,将其写入文件系统,然后将URL返回到该写入文件,不要将其添加到数据库中,只需将其存储在文件系统中首先。

其次,字节数组不是必须“转换”的东西,顾名思义,它只是原始字节。这就是客户端从服务器接收的内容,无论来源如何。 (换句话说,如果从文件系统中读取,客户端仍然会获得流式原始字节。)服务器返回的mime类型与文件一起告诉客户端如何解释字节。