Java 如何知道客户端是否已完成文件下载

Java 如何知道客户端是否已完成文件下载,java,http,client-server,download,fileutils,Java,Http,Client Server,Download,Fileutils,在我的web应用程序中,客户端可以从服务器下载文件。 我的代码看起来有点像这样: public void downloadFile(HttpServletResponse response, String fileName){ File fileToDownload = getFileWithName(fileName); updateContentTypeAndLength(response); OutputStream out = response.

在我的web应用程序中,客户端可以从服务器下载文件。 我的代码看起来有点像这样:

public void downloadFile(HttpServletResponse response, String fileName){
       File fileToDownload = getFileWithName(fileName);
       updateContentTypeAndLength(response);
       OutputStream out = response.getOutputStream();
       FileUtils.copyFile(fileToDownload, out);
}
问题是我需要知道客户端何时完成下载文件,有没有办法让我知道?
谢谢。

如果方法已完成,并且没有任何错误,您应该知道客户端已完成下载文件。或者您可以将状态返回给客户端。

这似乎是客户端的责任。您是如何请求的?他们下载的速度不能比您发送的速度快,因此在
copyFile
方法调用返回后的一段时间内。您想做什么?可能会有帮助:我的目的是尽可能确保客户端确实获得了该文件(完全下载了该文件)。我很确定一旦这个'FileUtils.copyFile(fileToDownload,out);'已结束-这并不意味着客户端已完成下载此文件。