在REST客户端中,我将多个文件上传到服务器。
为了向用户报告上传过程,我使用了进度条
总大小设置为文件维度的总和。
这是一个估计值,因为上载中的字节数多于文件中的字节数。
问题是:我可以获取上传开始前上传>的实际字节数吗?
这将允许在上传开始之前确定总大小而不是估计。
FormDataMultiPart multiPart = new FormDataMultiPart();
FileDataBodyPart fdbp = new FileDataBodyPart("data.zip", new File("data.zip"));
BodyPart bp = multiPart.bodyPart(fdbp);
builder.post(String.class, multiPart);
答案 0 :(得分:0)
简单回答 - 不。
更全面的一个:你可以。但这不值得。基本上,您需要以某种方式为FormDataMultiPart实例调用MessageBodyWriter(请参阅org.glassfish.jersey.media.multipart.internal.MultiPartWriter.writeTo(...)
)并从该调用中获取写入的字节。有一些与此方法相关的问题;
byte[]
发送 - 你需要大量内存(取决于data.zip文件大小)。