2014-12-13 63 views
-2

我正在做一個擴展,它應該在其後臺腳本中包含一些變量,這些變量應該對每個用戶都是唯一的,並且不得更改。我能夠在Firefox中解決這個問題,因爲它可以生成內聯的擴展包並且安裝時不會出現問題。 就Chrome而言,我不能依靠cookies,會話或本地存儲,因爲如果用戶刪除了他的瀏覽歷史記錄,可以將其刪除。 然後我的問題很簡單,就是有可能通過使用鏈接LIK此例如安裝來自Chrome網上應用店的擴展名,當變量: https://chrome.google.com/webstore/detail/search-by-image-by-google/dajedkncpodkggklbegccjpmnglmnflm?id=somevar從chrome webstore安裝變量時將變量傳遞給chrome擴展腳本

+1

這是不可能的。關於Stack Overflow有很多問題和解答,說明如何解決這個問題。 – 2014-12-13 09:50:23

回答

-1

您可以在Chrome中使用同步存儲:https://developer.chrome.com/extensions/storage 它使用谷歌驅動器在後臺存儲數據。即使用戶清除瀏覽器數據,它仍會保持不變。 用戶將無法在驅動器上看到此數據,因爲它們在驅動器的用戶界面中不可見(文件被隱藏),因此他可能無法將其刪除。

但是,您必須考慮用戶未登錄Chrome或用戶禁用同步選項時的情況。在這種情況下,storage.sync將像storage.local一樣運行。

即使用戶清除瀏覽數據,存儲在storage.local中的數據仍會保留。它們只會在卸載時被刪除。

編輯: 數據存儲在谷歌驅動器上使用syncFileSystem API - 不storage.sync。但是它並沒有改變我寫的解決方案。

+1

'chrome.storage'不會保存雲端硬盤中的內容。我認爲你將['chrome.storage'](https://developer.chrome.com/extensions/storage)擴展/應用API與['chrome.syncFileSystem'](https://開發者)混淆。 chrome.com/apps/syncFileSystem)應用程序API。 – 2014-12-14 12:10:58

+0

@RobW偷走了我的評論。另外,精明的用戶可以相對容易地去修改該值,正如你所說的那樣,如果你卸載了這些值,這些值就會被擦除。 – Xan 2014-12-14 12:12:02

+0

無論是哪種情況,都要考慮編輯答案,使其更清楚地表明OP所要求的內容是不可能的,並且將當前的答案作爲替代方案/變通方法呈現,而不是解決問題的方案。 – 2014-12-14 12:12:16

相關問題