Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 浏览器本地存储阵列缓冲区和对象_Javascript_Json_Html_Reactjs_Local Storage - Fatal编程技术网

Javascript 浏览器本地存储阵列缓冲区和对象

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) 我知道 在这

我正在创建一个学校项目,一个像whatsapp/signal这样的安全聊天。

该应用程序工作正常,仍然很混乱,但我需要帮助来继续该项目,就是为registrationId、keyId、IdentityKeyPair、PreKey、SignedPreKey创建一个本地存储

我测试的是InMemoryStorage,从日志中可以看出,我可以将大部分内容保存在其中

当我清除Authentication.Js来创建本地存储时,我觉得这并不是我应该做的事情

在SubmitHandle(e)

我知道

在这一点上,一切都很好,但是当我添加identitykeyPair/PreKey/SignedPreKey这是另一个对象时,我感觉自己陷入了混乱,我使用JSON.Stringify将对象放入本地存储并进入存储

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