【问题标题】:Getting the peer multiaddr from IPFS Swarm peers从 IPFS Swarm 对等点获取对等点多地址
【发布时间】:2020-02-03 05:32:22
【问题描述】:

我正在尝试将 IPFS swarm peers 函数返回的输出中的 addr 键中存储的缓冲区解码回原始字符串。我尝试将 toString() 方法与所有支持的编码一起使用,但我得到的输出未正确解码。

const swarm_peers = await node.swarm.peers(); 
console.log(swarm_peers['2']['addr']['buffer'].toString());

下面是我得到的示例输出

6sgp-1.bootstrap.libp2p.io���"BD�38\

如何正确解码缓冲区?

【问题讨论】:

  • 您可以分享您尝试这样做的代码的 sn-p 吗?

标签: javascript node.js ipfs


【解决方案1】:

您不应在原始buffer 上调用toString(),而应在addr 对象上调用:

const peers = await node.swarm.peers()
peers.forEach(peer => console.log(peer.addr.toString()))

【讨论】:

    猜你喜欢
    • 2018-12-22
    • 2012-12-18
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 2021-05-28
    • 1970-01-01
    • 2021-09-11
    相关资源
    最近更新 更多