在chrome扩展的背景中打开一个文件

时间:2014-06-13 08:41:24

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

我想让用户选择一个文件,然后让扩展程序读取并上传。但我不知道如何在扩展的后台脚本中这样做。我需要在后台脚本中处理该文件,因为我使用扩展API。我知道如何在内容脚本中执行此操作,我只需使用按钮创建一个输入元素,然后我就可以轻松检查输入的onchange事件。但我不知道如何让用户选择文件并在后台脚本中阅读,请帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

这实际上取决于您希望用户选择该文件的方式。

通过内容脚本展示元素很尴尬,因为您需要更改某个任意页面的UI。另一种方法是将它放在扩展弹出窗口,选项页面等中(任何带有chrome-extension:// scheme的东西)。

内容脚本主要限制您通过chrome.runtime.sendMessage发送内容。

扩展页面为您提供了更大的灵活性,因为它至少可以与后台页面共享JS对象,因此您可以传回实际的文件。也就是说,文件绑定到文档的生命周期,因此当弹出窗口消失或选项页面关闭时,您仍然会丢失该对象。但至少你可以有效地阅读其内容并在后台页面中进行所需的任何处理。