如何在Chrome扩展程序中将文件下载到扩展文件夹?

3
我想使用chrome.extension.getURL加载已下载的本地文件。由于这只能访问扩展文件夹中的文件,那么我如何将文件保存到扩展文件夹中呢?
我尝试了chrome.downloads.download,但它默认将文件保存到下载文件夹中。
1个回答

3
您可以通过XMLHttpRequest/$.get下载文件,将其存储为字符串/块数据并保存在本地存储中,如WebSQLIndexedDBchrome.storage.local,然后将其作为数据URI添加到网页中。
除了下载目录,您无法将文件保存在任何其他位置,请参见chrome.downloads API
  • chrome.downloads.download

    绝对路径、空路径和包含反向引用“..”的路径将导致错误。 onDeterminingFilename允许建议一个文件名[...]

  • chrome.downloads.onDeterminingFilename

    相对于用户默认下载目录的路径,可能包含子目录。绝对路径、空路径和包含反向引用“..”的路径将被忽略。

没有其他API可以下载文件。

如果我采用你的方法,用户是否仍然可以使用他们的文件编辑器来编辑文件? - Leo Jiang
不,所有可用于扩展的本地存储API都使用诸如SQLite之类的数据库文件。 - wOxxOm
你想要的东西只能通过编写一个单独的本地主机应用程序来实现。 - wOxxOm

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接