代码之家  ›  专栏  ›  技术社区  ›  maroodb

IPFS—如何从一个对等点向另一个对等点发送消息?

  •  0
  • maroodb  · 技术社区  · 6 年前

    我正在寻找一个解决方案,以发送一个消息从一个IPFS对等到另一个

    github doc

    ipfs.swarm.connect(addr, function (err) {
      if (err) {
        throw err
      }
      // if no err is present, connection is now open
    })
    

    但根据文件,连接后没有什么可做的。

    有一个名为 ipfs-pubsub-room 它处理对等点之间的消息传递,但没有用于浏览器的CDN。

    2 回复  |  直到 6 年前
        1
  •  3
  •   npfoss    5 年前

    ipfs.swarm.connect 很简单 连接 两个节点,以便它们可以交换文件。

    ipfs pubsub-room应该可以在浏览器上正常工作,但是是的,您需要自己打包。

    但是,你可以 使用 libp2p ipfs.libp2p 属性,如果您只需要直接从一个对等点向另一个对等点发送消息。

    对于入站消息,可以在其中一个节点上注册“协议处理程序”:

    const pull = require('pull-stream')
    ipfs.libp2p.handle('/my/protocol/name/1.0.0', (protocolName, connection) => {
      pull(connection, pull.collect((err, data) => {
        console.log("received:", data.toString())
      }))
    })
    

    ipfs 是一个 initialized IPFS节点对象,而不是 IPFS 导入。)

    const pull = require('pull-stream')
    ipfs.libp2p.dialProtocol(addr, '/my/protocol/name/1.0.0', (err, connection) => {
      pull(pull.values(["my message"]), connection)
    })
    

    您可以在 js-ipfs documentation .

        2
  •  -2
  •   momack2    6 年前

    add get 在这些节点之间共享内容的文件。如果您的“消息”可以编码为节点a添加的文件( https://docs.ipfs.io/reference/api/cli/#ipfs-add https://docs.ipfs.io/reference/api/cli/#ipfs-get ),然后他们就可以通过这种方式交换信息。

    退房 https://docs.ipfs.io/introduction/usage/

    推荐文章