2017-06-29 108 views
0

檢索相關的陣列,並檢索相同的格式?我要救 「identityKeyPair」,這是在形式我如何保存和如何可以存儲在鉻本地存儲陣列相關的鉻本地存儲

identityKeyPair - > {PUBKEY:ArrayBuffer,的privKey:ArrayBuffer}

我嘗試了下面的事情。但沒有解決。我正在於試圖找回[對象對象。

保存到本地存儲

chrome.storage.sync.set({'identityKeyPair': JSON.stringify(identityKeyPair)}, function() { 
      alert('identityKeyPair saved'); 
     }); 

試圖檢索

chrome.storage.sync.get(["identityKeyPair"], function(items){ 
    if (items.identityKeyPair) { 
alert(JSON.parse(items.identityKeyPair).pubKey); 
    } 
+0

[保存和檢索從chrome.storage.sync]可能重複(https://stackoverflow.com/questions/14531102/saving-and-retrieving-from-chrome-storage-sync) –

+3

我懷疑這可能有一些與你做字符串化-ING ArrayBuffers,看到https://stackoverflow.com/questions/8593896/chrome-extension-how-to-pass-arraybuffer-or-blob-from-content-script-to-the-bac –

回答

0

請按照下列步驟操作,而你正在使用您的清單chrome.storage.sync

  1. 申報存儲權限。

的manifest.json

{ 
    "manifest_version": 2, 

    "name": "Storage", 
    "description": "This extension shows a Google Image search result for the current page", 
    "version": "1.0", 
    "icons":{ 
"256":"img/icon.png" 
    }, 
    "permissions": [ 
    "storage" 
    ], 
    "app": { 
    "launch": { 
     "local_path": "options.html" 
    } 

    }, 
    "background": { 
    "scripts": ["js/app/background.js"] 
    } 

} 
  • 重新加載應用程序在chrome://extensions,讓您的manifest.json得到在瀏覽器中被更新。

  • 遵循chrome.storage.sync其回調函數的正確語法。

  • Sample.js

    $(".thing").click(function() { 
         chrome.storage.sync.set({"myKey": "testPrefs"},function(){ 
         alert("object stored"); 
    }) 
        chrome.storage.sync.get("myKey",function(obj){ 
         alert(obj.myKey); 
        }) 
    }); 
    

    這會爲你工作。我在我的Chrome應用程序中測試了這段代碼。

    +0

    我得到空數組,'{ 「PUBKEY」:{} 「的privKey」:{}}'。你試圖將數據保存在'identityKeyPair - > {PUBKEY:ArrayBuffer,的privKey:ArrayBuffer}'格式? – tarun14110