文件下载回调



我的站点中有一个创建.doc文件并让用户下载的页面。我希望能够在用户下载后从服务器上删除该文件。

是否有任何方法告诉浏览器调用我写的JavaScript回调函数(所以我可以使用ajax和删除文件),或者有任何其他方法让我知道何时删除文件?

不,没有。您可以通过服务器端脚本(PHP, Rails等)传递文件,然后删除它,或者,如果您的web服务器运行linux或其他unix,只需在下载开始后删除它。在这些平台上,文件在最后一个进程关闭它的句柄后被真正删除,所以即使在用户仍在下载文件时删除了文件,用户也可以继续这样做。

从服务器流式传输文件后,可以删除它们。您在服务器端使用的内容。例如,在aspx中,http://forums.asp.net/p/1204802/2109808.aspx

  private void fileDownload(string fileName, string fileUrl)
    {
        Page.Response.Clear();
        bool success = ResponseFile(Page.Request, Page.Response, fileName, fileUrl, 1024000);
        if (!success)
            Response.Write("Downloading Error!");
        else
       // you can delete here
        Page.Response.End();
    }

最新更新