From c877d65a70c1165644befdee91b926166156816b Mon Sep 17 00:00:00 2001 From: achingbrain Date: Thu, 2 Apr 2020 18:29:19 +0100 Subject: [PATCH] fix: dht.findPeer API endpoint returns ndjson --- .../ipfs-http-client/src/dht/find-peer.js | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/ipfs-http-client/src/dht/find-peer.js b/packages/ipfs-http-client/src/dht/find-peer.js index 695a1843c9..536a486cbf 100644 --- a/packages/ipfs-http-client/src/dht/find-peer.js +++ b/packages/ipfs-http-client/src/dht/find-peer.js @@ -9,23 +9,23 @@ module.exports = configure(api => { return async function findPeer (peerId, options = {}) { options.arg = `${Buffer.isBuffer(peerId) ? new CID(peerId) : peerId}` - const res = await api.post('dht/findpeer', { + const res = await api.ndjson('dht/findpeer', { timeout: options.timeout, signal: options.signal, searchParams: options }) - const data = await res.json() - - if (data.Type === 3) { - throw new Error(data.Extra) - } + for await (const data of res) { + if (data.Type === 3) { + throw new Error(data.Extra) + } - if (data.Type === 2 && data.Responses) { - const { ID, Addrs } = data.Responses[0] - return { - id: ID, - addrs: (Addrs || []).map(a => multiaddr(a)) + if (data.Type === 2 && data.Responses) { + const { ID, Addrs } = data.Responses[0] + return { + id: ID, + addrs: (Addrs || []).map(a => multiaddr(a)) + } } }