@@ -101,7 +101,7 @@ const fetchIPFSContentFromNode = async (
101101 }
102102 default : {
103103 // Get sample of content
104- const { value : firstChunk , done } = await node
104+ const { value : firstChunk } = await node
105105 . cat ( cid , { signal, length : 2048 , offset : 0 } )
106106 [ Symbol . asyncIterator ] ( )
107107 . next ( ) ;
@@ -154,7 +154,8 @@ const fetchIPFSContentFromNode = async (
154154const fetchIPFSContentFromGateway = async (
155155 cid : string ,
156156 node ?: IpfsNode ,
157- controller ?: AbortController
157+ controller ?: AbortController ,
158+ headers ?: Record < string , string >
158159) : Promise < IPFSContentMaybe > => {
159160 // fetch META only from external node(toooo slow), TODO: fetch meta from cybernode
160161 const isExternalNode = node ?. nodeType === 'external' ;
@@ -166,6 +167,7 @@ const fetchIPFSContentFromGateway = async (
166167 const response = await fetch ( contentUrl , {
167168 method : 'GET' ,
168169 signal : controller ?. signal ,
170+ headers,
169171 } ) ;
170172
171173 if ( response && response . body ) {
@@ -210,14 +212,15 @@ const fetchIPFSContentFromGateway = async (
210212type fetchContentOptions = {
211213 controller ?: AbortController ;
212214 node ?: IpfsNode ;
215+ headers ?: Record < string , string > ;
213216} ;
214217
215218async function fetchIpfsContent (
216219 cid : string ,
217220 source : IpfsContentSource ,
218221 options : fetchContentOptions
219222) : Promise < IPFSContentMaybe > {
220- const { node, controller } = options ;
223+ const { node, controller, headers } = options ;
221224
222225 try {
223226 switch ( source ) {
@@ -226,7 +229,7 @@ async function fetchIpfsContent(
226229 case 'node' :
227230 return fetchIPFSContentFromNode ( cid , node , controller ) ;
228231 case 'gateway' :
229- return fetchIPFSContentFromGateway ( cid , node , controller ) ;
232+ return fetchIPFSContentFromGateway ( cid , node , controller , headers ) ;
230233 default :
231234 return undefined ;
232235 }
0 commit comments