Google Chrome扩展程序 - 下载,移动和删除文件

时间:2014-06-22 20:54:31

标签: javascript google-chrome google-chrome-extension

我正在尝试为我的工作制作应用程序(仅在我的办公室中使用)以及其他我需要下载文件的方式(它将始终是一个ODT和一个txt文档,将通过单击按钮启动用户,在特定页面 - 标准下载)从我们的本地服务器。这两个文件是在服务器上创建的,然后发送到下载给请求它的用户,因此该部分很简单,就像任何其他提供下载的网页一样。

但是下载完成后我需要以某种方式:

1)自动打开ODT(openOffice writer)文件,以便用户继续编辑它。接下来会发生什么并不重要......

2)自动将TXT文件移动到用户磁盘上的特定文件夹(这是必需的,因为我们的特殊打印机会监视该特定文件夹,并且只要打印机检测到该文件夹​​中的文件,它就会自动开始打印)。将默认的chrome下载文件夹设置为受监视文件夹不是选项 - 所以我需要在下载到该受监视文件夹后自动移动TXT文件。

3)在完成前两个操作后,我需要清理默认下载文件夹(默认情况下Chrome下载的文件夹)因为它将满载这些文件并且不再需要它们。

现在,如果我能用javascript完成它会很棒但是我知道没有办法在本地系统上操作文件而不向用户显示对话框 - 所以这不是选项。

我认为这部分可以通过chrome扩展来完成,这是可接受的解决方案,因为此应用程序将仅在我的办公室中使用。但我不确定如何以及是否真的有可能实现我想要的,所以我需要你的帮助。

P.S。 重要的是,用户点击页面上的“下载”下载ODT和TXT文件后,浏览器没有其他窗口,对话框和其他“问题”,但之后的所有内容都应自动进行。

谢谢!

1 个答案:

答案 0 :(得分:1)

是的,您可以使用chrome.downloads API,执行这些任务,只要您可以接受Downloads文件夹的子文件夹作为打印机的目标。你不能在任意文件夹下载,我很害怕。

  1. 在您使用chrome.downloads.download完成后启动下载后,您可以使用chrome.downloads.open(downloadId)启动它。

  2. 您可以通过提供chrome.downloads.download的相对路径(请注意/斜杠而不是\)来开始下载到子文件夹中:printout/file.txt。< / p>

  3. 您可以记住下载ID,然后使用chrome.downloads.removeFile(downloadId)进行清理。

  4. 请注意您需要添加的权限,它们对此API非常精细。