我在 Glassfish 下有一个 Jersey RESTful web 服务,它接受传入的上传图像的 POST 请求,使用映射到 mime 类型 multipart 的 MediaType.MULTIPART_FORM_DATA
。
当我在我的服务中收到 FormDataContentDisposition fileDetail
的实例并调用 fileDetail.getSize()
我总是得到-1
我想知道如何使用 Jersey 和多部分文件上传来获取正确的文件大小。
最佳答案
我也遇到了这个问题,正在求RCA和解决方案。
只是一个解决方法:临时保存文件并使用 File#length() 方法获取上传文件的实际大小。
更多更新:
作为上述方法的补充,持续监控保存的字节大小,当达到文件大小阈值时抛出异常(或执行策略要求的操作)。
此外,不要相信客户直接给出的尺寸,除非客户是可信的,否则这可能是伪造的。
关于java - glassfish Jersey FormDataContentDisposition getSize 返回 -1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33515081/