我在https://js.ipfs.io/中有以下代码段:
const node = await IPFS.create()
const stream = node.cat('QmPChd2hVbrJ6bfo3WBcTW4iZnpHm8TEzWkLHmLpXhF68A')
let data = ''
for await (const chunk of stream) {
// chunks of data are returned as a Buffer, convert it back to a string
data += chunk.toString()
}
console.log(data)
它可以正常打印,并且可以显示数据。
我的问题:
与散列相对应的数据到底存储在哪里?是否可能知道哪些对等方正在存储此数据?
如果我想更改数据会怎样?我每次都必须生成一个新的哈希吗?
答案 0 :(得分:0)
如果您的节点具有数据副本,则将其存储在本地repo中。
如果没有,它将使用bitswap尝试从连接的对等方获取它。
您可以通过使用ipfs.dht.findProvs查询DHT来找出哪些对等方拥有数据。
'QmPCh ..'字符串是content identifier,因此,如果数据更改,则哈希值也将更改。