JS中的Libp2p DHT对等发现示例

问题描述

根据Libp2p文档,DHT可用于对等发现。

此外,Filecoin声称他们正在使用libp2p Kademlia DHT来发现go中的同伴。

到目前为止,我还没有找到如何在JS中进行设置的有效示例。

当我为peerdiscovery指定DHT时:

  modules: {
        transport: [TCP],streammuxer: [MPLEX],connEncryption: [SECIO],peerdiscovery: [KadDHT],dht: KadDHT,pubsub: GossipSub,},

我在日志中出现错误

 Error: libp2p-kad-dht requires an instance of Dialer

有人可以帮忙吗?

解决方法

根据js-libp2p API documentation,您可以在创建实例libp2p时传递libp2p拨号程序配置对象。

import string
# Amin
my_name = str(input("Enter a your name: "))
numbers      = []
characters   = []
output       = []
for x,y in zip(range(1,27),string.ascii_lowercase):
    numbers.append(x)
    characters.append(y)

print(numbers)
print(characters)
print("----------------------------------------------------------------------")

input = my_name
input = input.lower()

for character in input:
    number = ord(character) - 96
    output.append(number)
print(output)
print("----------------------------------------------------------------------")

sum = 0
lent_out = len(output)
for i in range(0,lent_out):
    sum = sum + output[i]

print("resulat sum is : ")
print("-----------------")

print(sum)





resualt is :
[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]
['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
----------------------------------------------------------------------
[1,14]
----------------------------------------------------------------------
resulat sum is : 
-----------------
37

source