mirror of
https://github.com/fluencelabs/js-libp2p-tcp
synced 2025-04-25 16:22:30 +00:00
js-libp2p-tcp
Node.js implementation of the TCP module that libp2p uses, which implements the interface-connection interface for dial/listen.
Description
libp2p-tcp
in Node.js is a very thin shim that adds support for dialing to a
multiaddr
. This small shim will enable libp2p to use other different
transports.
Example
const TCP = require('libp2p-tcp')
const multiaddr = require('multiaddr')
const mh1 = multiaddr('/ip4/127.0.0.1/tcp/9090')
const mh2 = multiaddr('/ip6/::/tcp/9092')
const tcp = new TCP()
var listener = tcp.createListener(mh1, function handler (socket) {
console.log('connection')
socket.end('bye')
})
listener.listen(mh1, function ready () {
console.log('ready')
const client = tcp.dial(mh1)
client.pipe(process.stdout)
client.on('end', () => {
listener.close()
})
})
outputs
ready
connection
bye
Installation
npm
> npm i libp2p-tcp
API
libp2p-tcp
accepts TCP addresses both IPFS and non IPFS encapsulated addresses, i.e:
/ip4/127.0.0.1/tcp/4001
/ip4/127.0.0.1/tcp/4001/ipfs/QmHash
Both for dialing and listening.
License
MIT
Description
Languages
JavaScript
100%