Kuinka käyttää luettavia virtoja Node.js:ssä?

Kuinka Kayttaa Luettavia Virtoja Node Js Ssa



Tiedot siirretään verkon yli lähettäjä- tai lähde- ja kohde- tai vastaanottajapuolen välillä virtojen muodossa. Näitä striimejä voidaan luoda ja yhdistää useita menetelmiä hyödyntäen, ja myös ääni- tai videotiedostot voidaan siirtää streamin yli. Luetut tiedot voidaan lisätä muihin kohdetiedostoihin käyttämällä ' kirjoittaa() ' ja ' työntää() ”menetelmiä myös.

Tämä opas selittää luettavien virtojen käytön Node.js:ssä.

Kuinka käyttää luettavia virtoja Node.js:ssä?

' Luettavissa ' -virrat luodaan kutsumalla ' luoReadStream() ” ja luetut tiedot voidaan sitten näyttää verkkosivulla luomalla paikallinen palvelin. Tapahtuman kuuntelijat ' päällä() ” -menetelmiä voidaan myös liittää luettaviin virtoihin viestien näyttämiseksi tai tiettyjen toimien suorittamiseksi, kun tiedoston lukeminen alkaa tai päättyy.







Katso esimerkkiä käytännön esittelyä varten.



Esimerkki: Sisällön lukeminen ja näyttäminen palvelimella käyttämällä luettavia virtoja

Tässä esimerkissä toimitetun tiedoston sisältöä luetaan ja näytetään sitten verkkoselaimen kautta:



konst fsObj = vaatia ( 'fs' ) ;

konst httpObj = vaatia ( 'http' ) ;

konst paikallinen palvelin = httpObj. createServer ( ( pyyntö, vastaus ) => {

yrittää {
// Kohdennettu tiedosto luettavaksi
konst dataStream = fsObj. luodaReadStream ( 'usecase.txt' ) ;
// Liitä tiedosto vastaukseen
dataStream. putki ( vastaus ) ;
} ottaa kiinni ( virheitä ) {
konsoli. virhe ( virheitä ) ;
}
} ) ;

paikallinen palvelin. kuunnella ( 8080 , ( ) => {
konsoli. Hirsi ( 'Palvelin toimii Localhost-portin numerolla: '8080'' )
} ) ;

Yllä olevan koodin kuvaus on seuraava:





  • Tuo ensin tarvittava ' fs ' ja ' http ' moduuleja ja tallentaa niiden objektit ' fsObj ' ja ' httpObj ” muuttujia vastaavasti.
  • Seuraavaksi palvelin on luotu kutsumalla ' createServer() ' -menetelmää ja tallentamalla tämä äskettäin luotu palvelin ' paikallinen palvelin ”muuttuja.
  • Käytä sitten ' yrittää ' -lohko menetelmän takaisinkutsutoiminnon sisällä ja kutsu ' luoReadStream() ' menetelmällä ' fsObj ”muuttuja.
  • Välitä kohdistettu tiedoston sisältö, joka on luettava tämän menetelmän sulkeissa ja tallenna tulos ' dataStream ”muuttuja.
  • Aseta ' dataStream ' muuttuja ' .putki() ' tapa lähettää vastaus.
  • Käytä ' ottaa kiinni ”-lohko käsitelläksesi mahdollisia virheitä.
  • Lopuksi kuuntele tai asenna palvelin portin numeron kautta ' 8080 ” ja näyttää onnistumisviestin takaisinsoittotoiminnon avulla.

Suorita yllä olevan koodin sisältävä tiedosto (controlFlow.js), joka tapahtuu alla olevan komennon kautta:

solmun ohjausFlow. js

Luotu tulos osoittaa, että '' .putki() ' ja ' Luettava stream ”, tiedostotiedot on luettu ja lähetetty kohdevirtaan näytettäväksi verkkosivulla:



Esimerkki 2: Staattisten tiedostojen lukeminen paikallisesti ReadStreamin avulla

Tässä tapauksessa streamin yli toimitettu tiedosto valitaan ja sen sisältö näytetään sitten konsoli-ikkunassa tapahtumakuuntelijoiden avulla:

konst fsObj = vaatia ( 'fs' ) ;

konst streamObj = fsObj. luodaReadStream ( 'usecase.txt' ) ;

streamObj. päällä ( 'data' , ( sisältö ) => {

konsoli. Hirsi ( sisältö. toString ( ) ) ;

} ) ;

streamObj. päällä ( 'loppu' , ( ) => {

konsoli. Hirsi ( ' \n Lopetin tiedoston lukemisen.' ) ;

} ) ;

streamObj. putki ( käsitellä asiaa. stdout ) ;

Yllä olevan koodin kuvaus on seuraava:

  • Ensinnäkin ' fs ' moduuli tuodaan ja sen objekti tallennetaan ' fsObj ”muuttuja.
  • Seuraavaksi käytä ' fsObj ' kutsuu ' luoReadStream() ” -menetelmää ja välittää sen kohdetiedoston polun, jonka sisältö on haettava. Tallenna menetelmän tulos uuteen muuttujaan ' streamObj ”.
  • Liitä ' päällä() ' -menetelmällä 'streamObj', joka kutsuu takaisinsoittotoiminnon, kun ' tiedot ' haetaan. Haettu data välitetään takaisinsoittotoiminnon parametrina, joka muuntaa tiedot merkkijonomuotoon ja näyttää sen konsolin kautta.
  • Liitä uudelleen ' päällä() ' menetelmä '' streamObj ” ja tällä kertaa sen takaisinsoittotoiminto näyttää lopetusviestin, kun tiedoston lukeminen on valmis.

Yllä olevan koodin suorittamisen jälkeen luotu tulos osoittaa, että loppuviestin luetut tiedot on näytetty konsolin yli:

Tämä kaikki koskee luettavien streamien käyttöä Node.js:ssä.

Johtopäätös

Jos haluat työskennellä luettavien virtojen kanssa Node.js:ssä, käytä menetelmää ' luoReadStream() ' kutsutaan '' kautta fs ” moduuliobjekti. Kohdennettu tiedostopolku, jolle sisältö on kirjoitettava, välitetään sitten menetelmäparametrina. Sitä voidaan käyttää ' .putki() ” -menetelmää, jolla voit suorittaa lisätehtäviä haetuille tiedoille, kuten kirjoittaa sisällön toiseen tiedostoon. Tämä viesti on havainnollistanut työskentelymenettelyä luettavien virtojen kanssa.