簡體   English   中英

Chrome擴展程序存儲了大量數據

[英]Chrome extension store large amounts of data

我正在尋找一種在Chrome擴展程序中存儲大量數據的有效方法。 我有一些大約1-2mb的txt文件。 我希望我的chrome擴展程序能夠在本地“緩存”它們,所以我不需要每次都獲取它們。 我找到了syncFileSystem,但這僅適用於打包應用。

嘗試安裝此擴展程序時出現警告:

'syncFileSystem'僅適用於打包的應用,但這是一個擴展。

在Chrome擴展程序中存儲此類數據的最佳方法是什么?

的manifest.json

{
    "manifest_version": 2,
    "name": "__MSG_name__",
    "version": "1.0",
    "default_locale": "en",
    "description": "__MSG_description__",
    "icons" : {
        "16" : "img/logo_enabled_16.png",
        "48": "img/logo_enabled_48.png",
        "128": "img/logo_enabled_128.png"
    },
    "browser_action": {
        "default_icon": "img/logo_enabled_48.png",
        "default_title": "__MSG_browser_action_title__",
        "default_popup":"options.html"
    },
    "background": {
        "scripts": [
            "js/chrome.js",
            "js/filter.js",
            "js/background.js"
        ],
        "persistent": true
    },
    "content_scripts": [{
        "matches": [
            "http://*/*",
            "https://*/*"
        ],
        "js": [
            "js/docReady.js",
            "js/content.js"
        ]
    }],
    "offline_enabled":true,
    "options_ui": {
        "chrome_style": true,
        "page":"options.html"
    },
    "permissions": [
        "activeTab",
        "tabs",
        "webRequest",
        "webRequestBlocking",
        "webNavigation",
        "storage",
        "syncFileSystem",
        "http://*/*",
        "https://*/*"
    ],
    "short_name": "__MSG_shortName",
    "minimum_chrome_version":"45.0.2454.101",
    "web_accessible_resources":[
        "css/bootstrap.min.css",
        "js/jquery.min.js",
        "js/chrome.js",
        "js/bootstrap.min.js"
    ]
}

只有WebSQLIndexedDBchrome.storage.local和HTML5 文件系統 (沙盒文件系統)可以通過"unlimitedStorage"權限增加超過5MB的限制。

manifest.json: "permissions": ["unlimitedStorage"]

為存儲HTML5客戶端數據(如數據庫和本地存儲文件)提供無限制的配額。 如果沒有此權限,擴展程序或應用程序將限制為5 MB的本地存儲空間。

筆記:

  • W3C不推薦使用WebSQL,而是支持較慢的IndexedDB,但我認為它會留在Chrome中,因為它基於SQL是更快更靈活的。
  • chrome.storage.local是最容易使用的,但對於大型對象來說可能不是最快的,如果速度很重要,請進行一些測試。
  • 如果增益很大,請使用Zip / LZMA Javascript庫壓縮/解壓縮文本文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM