【发布时间】:2021-09-27 14:29:37
【问题描述】:
有没有一种简单的方法可以将大文件从客户端上传到 django rest 框架端点。在我的应用程序中,用户将上传非常大的文件 (>4gb)。浏览器有上传限制,这是图表。
我目前的想法是从客户端以块的形式上传文件并从其余端点接收块。但我将如何做到这一点?我看到了一些库,比如 resumable.js、tus.js、flow.js 等。但是我将如何处理后端的块?是否有针对此类问题积极维护的库?请帮帮我。
【问题讨论】:
-
我推荐使用 sftp 服务器。我假设您的应用程序同步运行。如果您使用该数据量请求 django,您将阻止所有其他传入请求,直到文件被上传,甚至作为块上传。
-
@KlimBim 我的应用是异步的。 React 作为前端,django 作为后端。对于这种情况,sftp-server 不是一个很好的选择。我在 django 中看到了一些 tusjs 服务器的实现,但是——它的 repo 已经很老了。它有很多问题,因为它是在 6 年前实施的。 tus协议的文档也不是很好。
标签: django django-rest-framework large-files django-file-upload large-file-upload