2012-12-21 31 views
0

正在使用Liferay的自定义portlet,并在正在使用碧玉报告我现在的问题是,我怎样才能在客户机如何在下载文件后从服务器上删除文件?或者如何将文件直接从输出流存储到客户端机器?

现在我存储在文件服务器上直接下载PDF格式的报告first.then下载提供网址PDF到user.but如何我可以直接将文件存储到客户端机器,如果我有PDF文件的输出流。

ot如果我能知道一些如何当用户点击下载链接和下载文件后,如果我想从服务器删除donlowded文件,那么我该怎么做。如果任何人可以指导我..

回答

0

我不确定你要求什么是可能的,但我会有兴趣看到有人正确的声明。

服务器确实不应该直接将文件存储在客户机器上,因为这违反了客户机服务器关系的意图。客户端必须对文件提出请求,然后客户端可以保存该文件(例如,像ftp下载)。服务器不会按照他们认为合适的方式操纵客户机。

就知道何时下载文件而言,portlet中没有任何可检测到的内容。您可以使用ResourceRequest和serveResource方法为文件提供服务,但portlet API中的任何内容都不会通知您的portlet已下载完成或未被某些内容中断。

作为一种替代方法,您可以尝试简单地使用一个cron作业来清理旧文件。在这种情况下,请务必通知用户需要多长时间才能成功下载文件。

相关问题