const { pipeline } = require('node:stream');

pipeline(upstreamResponse, clientResponse, (error) => {
  if (error) console.error('Proxy response failed:', error);
});

Yi amfani da wannan hanyar jiki bayan zaɓin manufa, buƙatar zuwa tushe da shirye-shiryen matsayi da kawuna zuwa abokin ciniki. Rarraba Node yawanci suna ba da Buffer; kada ka tara su cikin zare don hotuna ko wani abun ciki na binary da ba ya canzawa.

pipeline yana daidaita matsi na baya kuma yana yada gazawa. Zai iya lalata manufa idan kuskure ya faru, don haka kada ka ɗauka cewa za a iya aika wani martanin kuskuren HTTP bayan haka. Wannan guntu ba cikakken uwar garken proxy ba ne.

Don bytes da ke wucewa, kiyaye bayanan wakilci masu dacewa kamar nau'in kafofin watsa labarai da ɓoyewar abun ciki, kuma ka kula da filayen da suka shafi kowane tsalle ta hanyar ka'idojin turawa. Kwatancen bytes na gzip da kawunan amsa masu dacewa yana nuna zaɓi tsakanin wakilci mai ɓoyewa da wanda aka buɗe.

Sake rubuta HTML da gangan yana buƙatar wata hanya: gane nau'in kafofin watsa labarai, kula da matsewa da saitin haruffa, canza rubutun kuma samar da bayanai don sabbin bytes. Tsohon Content-Length ba zai iya bayyana jikin da ya canza ba.

Buffer.concat zai iya kiyaye abun ciki na binary lokacin da ake buƙatar cikakken tanadi, amma yana adana dukan jiki a ƙwaƙwalwa. Rarraba hoton da ke wucewa ba ya buƙatar wannan kuɗin.

Labarai masu alaƙa