0

我想讓用戶選擇一個文件,然後選擇擴展名來讀取並上傳。但我不知道如何在擴展的後臺腳本中做到這一點。我需要在後臺腳本中處理文件,因爲我使用擴展API。我知道如何在內容腳本中做到這一點,我只是用按鈕創建一個輸入元素,然後我可以輕鬆地檢查onchange事件的輸入。但我不知道如何讓用戶選擇一個文件並在後臺腳本中讀取它,請幫我解決這個問題。在Chrome擴展的後臺打開一個文件

+1

儘管不是重複的,但通過閱讀[這個答案](http://stackoverflow.com/a/21138567/934239),這應該對你有所幫助。 – Xan

回答

0

這實際上取決於您希望用戶如何選擇該文件。

通過內容腳本來填充元素很尷尬,因爲您需要更改某些任意頁面的UI。另一種方法是將其放入擴展彈出窗口,選項頁面等(任何帶有chrome-extension://方案的東西)。

內容腳本主要限制您通過chrome.runtime.sendMessage發送內容。

擴展頁面爲您提供了更多的靈活性,因爲它至少可以與背景頁面共享JS對象,因此您可以將實際的文件傳回。也就是說,文件被綁定到文檔的生命週期,所以當彈出消失或選項頁面關閉時,仍然會丟失該對象。但至少您可以高效地閱讀其內容,並在後臺頁面中執行所需的任何處理。

相關問題