Axios vrátil prúd. Súbor sa stále zapisuje.
Pri sťahovaní cez SOCKS agenta s Axiosom v Node čakajte na čítanie zo siete aj na zápis do cieľa.
Keď Axios vyrieši požiadavku Node s responseType: 'stream', telo je pripravené na použitie. Súbor však ešte nie je dokončený. Počkajte na prenos do cieľa:
import { createWriteStream } from 'node:fs';
import { pipeline } from 'node:stream/promises';
const response = await client.get(url, { responseType: 'stream' });
await pipeline(response.data, createWriteStream(partPath));Toto používa už nakonfigurovaného klienta. Jeho adaptér musí podporovať zvolený proxy alebo SOCKS agenta; vstavaná voľba HTTP proxy v Axios a SOCKS agent sú oddelené mechanizmy. URL, časové limity a politiku zrušenia dodáva aplikácia.
Použite dočasnú cestu, ktorá patrí tejto operácii. Rozhodnite, ako riešiť kolízie skôr, než vytvoríte zapisovací prúd, aby upratovanie po zlyhaní neodstránilo cudzí súbor. Zámerné pokračovanie potrebuje vlastnú politiku.
pipeline koordinuje čítanie a zápis a hlási ich zlyhanie. Zavolanie response.data.pipe(file) a okamžité zalogovanie úspechu ten bod dokončenia preskočí. Prerušenie siete alebo plný disk môžu nastať po tom, čo dorazila platná odpoveď HTTP; uchovajte kontext odpovede aj chybu, ktorá spracovanie zastavila.
Po úspešnom očakávanom spracovaní vykonajte kontroly artefaktu aplikácie a potom zverejnite konečný názov. Dokončenie znamená, že prúd bol spotrebovaný a zapísaný v rámci týchto API, nie že ide o očakávané vydanie alebo dokument. Pri zlyhaní alebo zrušení ponechajte alebo odstráňte čiastočný súbor podľa zvolenej politiky pokračovania. Signál zrušenia môže zastaviť príslušnú požiadavku a operácie prúdu; nerozhoduje však, čo má aplikácia urobiť s výstupom.