小编Fre*_*roo的帖子

如何隔离 Gunjs 数据库?

我已经尝试 GunJs 几天了,我真的很喜欢它。作为一个入门项目,我关注了Fireship 聊天 dapp 视频,旨在构建您自己的聊天。

问题是,既然我已经完成了教程,我想创建自己的聊天。然而,由于某种原因,如果我在自己的应用程序中获得一个“聊天”节点,它似乎会在与在线教程相同的“聊天”节点上进行操作。

onMount(() => {

    // Get Messages in large chat
    db.get('chat')
    .map()
    .once(async (data, id) => {
        if (data) {
            // key for E2E - to do: change for web3
            const key = '#foo';

            var message = {
                //transform the data
                who: await db.user(data).get('alias'),
                what: (await SEA.decrypt(data.what, key)) + '',
                when: GUN.state.is(data, 'what'), 
            };

            if (message.what) {
                messages = [...messages.slice(-100), message]
            }
        }
    })
})
Run Code Online (Sandbox Code Playgroud)

如果我更改加密密钥,情况也会如此(然后消息将变得未定义)。由此产生多个问题:

  • 图节点名称在整个 GunDb 中是否唯一?
  • 当两个基于枪的应用程序调用同一节点名称时,如何处理冲突? …

javascript gun gundb

6
推荐指数
1
解决办法
1229
查看次数

标签 统计

gun ×1

gundb ×1

javascript ×1