Axios palautti virran. Tiedostoa kirjoitetaan yhä.
Odota sekä verkon lukemista että kirjoittamista kohteeseen, kun lataat SOCKS-agentin kautta Axiosilla Nodessa.
Kun Axios ratkaisee Node-pyynnön asetuksella responseType: 'stream', runko on valmis kulutettavaksi. Tiedosto ei kuitenkaan ole vielä valmis. Odota siirtoa sen kohteeseen:
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));Tämä käyttää jo määritettyä asiakasta. Sen sovittimen on tuettava valittua välityspalvelinta tai SOCKS-agenttia; Axiosin sisäänrakennettu HTTP-välityspalvelinvalinta ja SOCKS-agentti ovat erillisiä mekanismeja. Sovellus toimittaa URL-osoitteen, aikakatkaisut ja peruutuskäytännön.
Käytä väliaikaista polkua, joka kuuluu tälle toiminnolle. Päätä törmäysten käsittelystä ennen kirjoitusvirran luomista, jotta virheen jälkeinen siivous ei poista toisen tiedostoa. Tarkoituksellinen jatkaminen tarvitsee oman käytäntönsä.
pipeline sovittaa lukemisen ja kirjoittamisen yhteen ja raportoi niiden epäonnistumisen. response.data.pipe(file)-kutsun tekeminen ja onnistumisen kirjaaminen heti ohittaa tuon valmistumispisteen. Verkkokatkos tai täysi levy voi tapahtua sen jälkeen, kun kelvollinen HTTP-vastaus on saapunut; säilytä vastauksen konteksti ja virhe, joka pysäytti käsittelyn.
Kun odotettu käsittely onnistuu, tee sovelluksen artefaktitarkistukset ja julkaise sitten lopullinen nimi. Valmistuminen tarkoittaa, että virta on kulutettu ja kirjoitettu näiden API:en mukaisesti, ei että se olisi odotettu julkaisu tai asiakirja. Virheen tai peruutuksen yhteydessä säilytä tai poista osittainen tiedosto valitun jatkamiskäytännön mukaisesti. Peruutussignaali voi pysäyttää kyseisen pyynnön ja virran toiminnot; se ei päätä, mitä sovelluksen pitäisi tehdä tulosteella.