ipfs-http-client
Version:
A client library for the IPFS HTTP API
24 lines • 794 B
JavaScript
import { Multiaddr } from 'multiaddr';
import { configure } from '../lib/configure.js';
import { toUrlSearchParams } from '../lib/to-url-search-params.js';
export const createPeers = configure(api => {
async function peers(options = {}) {
const res = await api.post('swarm/peers', {
signal: options.signal,
searchParams: toUrlSearchParams(options),
headers: options.headers
});
const {Peers} = await res.json();
return (Peers || []).map(peer => {
return {
addr: new Multiaddr(peer.Addr),
peer: peer.Peer,
muxer: peer.Muxer,
latency: peer.Latency,
streams: peer.Streams,
direction: peer.Direction == null ? undefined : peer.Direction === 0 ? 'inbound' : 'outbound'
};
});
}
return peers;
});