2017-06-29 114 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