Javascript 浏览器本地存储阵列缓冲区和对象
我正在创建一个学校项目,一个像whatsapp/signal这样的安全聊天。 该应用程序工作正常,仍然很混乱,但我需要帮助来继续该项目,就是为registrationId、keyId、IdentityKeyPair、PreKey、SignedPreKey创建一个本地存储 我测试的是InMemoryStorage,从日志中可以看出,我可以将大部分内容保存在其中 当我清除Authentication.Js来创建本地存储时,我觉得这并不是我应该做的事情 在SubmitHandle(e) 我知道 在这一点上,一切都很好,但是当我添加identitykeyPair/PreKey/SignedPreKey这是另一个对象时,我感觉自己陷入了混乱,我使用JSON.Stringify将对象放入本地存储并进入存储Javascript 浏览器本地存储阵列缓冲区和对象,javascript,json,html,reactjs,local-storage,Javascript,Json,Html,Reactjs,Local Storage,我正在创建一个学校项目,一个像whatsapp/signal这样的安全聊天。 该应用程序工作正常,仍然很混乱,但我需要帮助来继续该项目,就是为registrationId、keyId、IdentityKeyPair、PreKey、SignedPreKey创建一个本地存储 我测试的是InMemoryStorage,从日志中可以看出,我可以将大部分内容保存在其中 当我清除Authentication.Js来创建本地存储时,我觉得这并不是我应该做的事情 在SubmitHandle(e) 我知道 在这
preKey:"{"keyId":1,"keyPair":{"pubKey":{},"privKey":{}}}"
使用JSON.parse,我得到:
Object
keyId:1
-keyPair: Object
+privKey:Object
+pubKey:Object
:D pub和privkey应为ArrayBuffer。有没有足够勇敢的人能帮我创建这样一个部件,我可以将我的垃圾存储到localstorage中并检索它
我知道有很多简单的方法和不同的库,但我有点局限于项目范围和要求
-加密聊天
-使用耳语系统信号协议
我的应用程序使用API,因为前端是根据他们的教程制作的
git-elsehow/信号协议
我正在使用信号协议的分叉库看一看,而不是本地存储可能重复的Hmm我也听说我的老师说有重复的,或者没有必要有重复的,但目前我不知道有什么更好的方法来存储arraybuffer的数据,然后加载它,以便信号协议
KeyHelper.generateIdentityKeyPair()可以再次使用它。然后((identityKeyPair)=>{var int32=new Uint8Array(identityKeyPair.pubKey);var int23=new Uint8Array(identityKeyPair.privKey);localStorage.setItem('pubKey',JSON.stringify(int32));localStorage.setItem('privKey',JSON.stringify(int23));};var arr1=localStorage.getItem('privKey');var arr2=localStorage.getItem('pubKey');var a1=新的UINT8阵列(arr1);var a2=新的UINT8阵列(arr2);让identityKeyPair={pubKey:a2.buffer,privKey:a1.buffer};console.log(identityKeyPair)代码>
Object
keyId:1
-keyPair: Object
+privKey:Object
+pubKey:Object