Yan*_*hon 11 java playframework
是否可以使用Play以某种方式监视文件上传!框架?此外,如果文件应该是BIG(即+ 500MB),是否可以将接收的字节保存到临时文件中而不是将其保存在内存中? (见下面的更新)
注意:没有代码显示,因为我想知道这些问题,似乎无法找到谷歌的答案
谢谢!
**更新**
(我差点忘了这个问题.)好吧,显然,上传的文件存储在临时文件中,文件不作为字节数组(或其他东西)传递,而是作为动作控制器的Java File对象传递.
但即使在RESTful环境中,也可以实现文件监控.
**更新2**
有没有办法让传入的HTTP请求获得早期事件监听器?这可以允许监视请求数据传输.
玩!已经将大型 HTTP 请求存储在以 UUID 命名的临时文件中(从而减少服务器的内存占用)。请求完成后,该文件将被删除。
玩!正在使用(很棒的)Netty项目作为其 HTTP 服务器堆栈(如果您正在考虑异步 HTTP 客户端,那么也会在客户端堆栈上使用)。
内蒂是:
鉴于 Play! 的堆栈,您应该能够实现“上传进度条”或其他东西。实际上,异步 HTTP 客户端已经实现了文件上传和断点下载的进度监听器(请参阅快速入门指南)。
但 play.server包似乎没有提供这样的功能/扩展点。
我想玩!意味着位于反向代理模式下的“真实”HTTP 服务器后面(例如 nginx 或 lighthttpd)。
因此,您最好为这些服务器之一使用上传进度模块(例如nginx 的HttpUploadProgressModule),而不是搞乱 Play! 的 HTTP 堆栈。