【发布时间】:2016-08-06 12:26:34
【问题描述】:
当用户上传单个文件时,我们将按如下方式检索文件
play.mvc.Controller.request().body().asMultipartFormData().getFiles().get(0)
当用户选择并上传多个文件时,我们将按如下方式检索多个文件并逐个处理
play.mvc.Controller.request().body().asMultipartFormData().getFiles()
现在我们需要允许用户上传一个包含文件的文件夹,子文件夹和子文件夹可能包含多个文件或文件夹。我们需要全部处理。
例如,在 FileZilla 中,用户可以上传整个文件夹,该文件夹、子文件夹、子文件夹和所有文件都会上传到服务器。
在以下方面需要帮助
- 如何为用户提供上传文件夹的选项?
- Play 框架中哪个 Play API 用于递归处理文件夹、子文件夹和文件?
- 所有浏览器都支持文件夹上传吗?
- 我们是否有任何实用程序可以接受来自客户端的批量上传或文件夹上传?
目前我们正在使用 anjular 1.0 并在上述方面需要帮助
谢谢。
【问题讨论】:
-
您可以在输入上使用
webkitdirectory=""属性。这将允许谷歌浏览器上传文件夹。但是,据我所知,这仅受 Chrome 支持。在 Java 代码中,您应该能够像上传多个文件时一样处理文件。 -
其他浏览器呢? Chrome 是否只支持它?假设文件夹正在上传,你能帮我提供一个示例 sn-p 或伪代码吗?
-
不幸的是,只有 Chrome 支持它。这是一个 jsfiddle,其中一个输入的 webkitdirectory 设置为jsfiddle.net/dt0cbmkt。至于Java,我没有Play框架的项目,但尝试使用你说的:
play.mvc.Controller.request().body().asMultipartFormData().getFiles()
标签: playframework