ఈ గైడ్ Node.jsలో చదవగలిగే స్ట్రీమ్ల వినియోగాన్ని వివరిస్తుంది.
Node.jsలో రీడబుల్ స్ట్రీమ్లను ఎలా ఉపయోగించాలి?
ది ' చదవదగినది 'ప్రవాహాలు 'ని పిలవడం ద్వారా సృష్టించబడతాయి క్రియేట్ రీడ్ స్ట్రీమ్() ” మరియు చదివిన డేటా స్థానిక సర్వర్ని సృష్టించడం ద్వారా వెబ్ పేజీలో ప్రదర్శించబడుతుంది. ఈవెంట్ శ్రోతలు సహాయంతో “ పై() ” మెసేజ్లను ప్రదర్శించడానికి లేదా ఫైల్ చదవడం ప్రారంభమైనప్పుడు లేదా ముగిసినప్పుడు నిర్దిష్ట చర్యలను చేయడానికి రీడబుల్ స్ట్రీమ్లకు పద్ధతులు కూడా జోడించబడతాయి.
ఆచరణాత్మక ప్రదర్శన కోసం ఉదాహరణను పరిశీలించండి.
ఉదాహరణ: చదవగలిగే స్ట్రీమ్లను ఉపయోగించి సర్వర్లో కంటెంట్ను చదవడం మరియు ప్రదర్శించడం
ఈ ఉదాహరణలో, అందించిన ఫైల్ యొక్క కంటెంట్ చదవబడుతుంది మరియు వెబ్ బ్రౌజర్లో ప్రదర్శించబడుతుంది:
స్థిరంగా fsObj = అవసరం ( 'fs' ) ;
స్థిరంగా httpObj = అవసరం ( 'http' ) ;
స్థిరంగా స్థానిక సర్వర్ = httpObj. సృష్టించు సర్వర్ ( ( అభ్యర్థన, ప్రతిస్పందన ) => {
ప్రయత్నించండి {
// టార్గెటెడ్ ఫైల్ చదవడానికి
స్థిరంగా డేటా స్ట్రీమ్ = fsObj. రీడ్ స్ట్రీమ్ సృష్టించండి ( 'usecase.txt' ) ;
// ప్రతిస్పందనకు ఫైల్ను పైప్ చేయండి
డేటా స్ట్రీమ్. పైపు ( ప్రతిస్పందన ) ;
} క్యాచ్ ( లోపాలు ) {
కన్సోల్. లోపం ( లోపాలు ) ;
}
} ) ;
స్థానిక సర్వర్. వినండి ( 8080 , ( ) => {
కన్సోల్. లాగ్ ( 'లోకల్హోస్ట్ పోర్ట్ నంబర్లో సర్వర్ నడుస్తోంది: '8080' ' )
} ) ;
పై కోడ్ యొక్క వివరణ క్రింది విధంగా ఉంది:
- ముందుగా, అవసరమైన వాటిని దిగుమతి చేసుకోండి ' fs 'మరియు' http 'మాడ్యూల్స్ మరియు వాటి వస్తువులను 'లో నిల్వ చేయండి fsObj 'మరియు' httpObj ”వరుసగా వేరియబుల్స్.
- తరువాత, ''ని ప్రారంభించడం ద్వారా సర్వర్ సృష్టించబడింది. createServer() 'పద్ధతి మరియు కొత్తగా సృష్టించబడిన ఈ సర్వర్ని ఒక 'లో నిల్వ చేయడం స్థానిక సర్వర్ ” వేరియబుల్.
- అప్పుడు, ఒక 'ని ఉపయోగించండి ప్రయత్నించండి 'పద్ధతి కాల్బ్యాక్ ఫంక్షన్లో బ్లాక్ చేయండి మరియు 'ని పిలవండి క్రియేట్ రీడ్ స్ట్రీమ్() 'ఉపయోగించే పద్ధతి' fsObj ” వేరియబుల్.
- ఈ పద్ధతి కుండలీకరణం లోపల చదవాల్సిన లక్ష్య ఫైల్ కంటెంట్ను పాస్ చేయండి మరియు ఫలితాన్ని ' డేటా స్ట్రీమ్ ” వేరియబుల్.
- చొప్పించు ' డేటా స్ట్రీమ్ '' లోకి వేరియబుల్ .పైపు() ” ప్రతిస్పందనను పంపే పద్ధతి.
- 'ని ఉపయోగించండి క్యాచ్ 'ఏదైనా సంభవించిన లోపాలను నిర్వహించడానికి బ్లాక్ చేయండి.
- చివరగా, పోర్ట్ నంబర్పై సర్వర్ని వినండి లేదా సెటప్ చేయండి ' 8080 ” మరియు విజయ సందేశాన్ని దాని కాల్బ్యాక్ ఫంక్షన్ సహాయంతో ప్రదర్శించండి.
దిగువ పేర్కొన్న ఆదేశం ద్వారా పై కోడ్ని కలిగి ఉన్న ఫైల్ (controlFlow.js)ని అమలు చేయండి:
నోడ్ నియంత్రణ ప్రవాహం. jsఉత్పత్తి చేయబడిన అవుట్పుట్ దీని సహాయంతో చూపిస్తుంది .పైపు() 'మరియు' రీడబుల్ స్ట్రీమ్ ”, ఫైల్ డేటా చదవబడింది మరియు వెబ్పేజీలో ప్రదర్శించడానికి గమ్య ప్రసారానికి పంపబడింది:
ఉదాహరణ 2: రీడ్స్ట్రీమ్ని ఉపయోగించి స్థానికంగా స్టాటిక్ ఫైల్లను చదవడం
ఈ సందర్భంలో, స్ట్రీమ్లో అందించిన ఫైల్ ఎంపిక చేయబడుతుంది మరియు ఈవెంట్ శ్రోతల సహాయంతో దాని కంటెంట్ కన్సోల్ విండోలో ప్రదర్శించబడుతుంది:
స్థిరంగా fsObj = అవసరం ( 'fs' ) ;స్థిరంగా streamObj = fsObj. రీడ్ స్ట్రీమ్ సృష్టించండి ( 'usecase.txt' ) ;
streamObj. పై ( 'సమాచారం' , ( విషయము ) => {
కన్సోల్. లాగ్ ( విషయము. స్ట్రింగ్ ( ) ) ;
} ) ;
streamObj. పై ( 'ముగింపు' , ( ) => {
కన్సోల్. లాగ్ ( ' \n ఫైల్ చదవడం పూర్తయింది.' ) ;
} ) ;
streamObj. పైపు ( ప్రక్రియ. stdout ) ;
పై కోడ్ యొక్క వివరణ క్రింది విధంగా ఉంది:
- మొదట, ' fs 'మాడ్యూల్ దిగుమతి చేయబడింది మరియు దాని వస్తువు 'లో నిల్వ చేయబడుతుంది fsObj ” వేరియబుల్.
- తరువాత, 'ని ఉపయోగించి fsObj 'ని పిలుస్తుంది' క్రియేట్ రీడ్ స్ట్రీమ్() ” పద్ధతి మరియు కంటెంట్ని తిరిగి పొందాల్సిన లక్ష్య ఫైల్ యొక్క మార్గాన్ని దాటుతుంది. పద్ధతి యొక్క ఫలితాన్ని కొత్త వేరియబుల్లో నిల్వ చేయండి ' streamObj ”.
- జోడించు' పై() 'streamObj'తో కూడిన పద్ధతి ' సమాచారం ” తిరిగి పొందబడింది. తిరిగి పొందిన డేటా కాల్బ్యాక్ ఫంక్షన్కు పారామీటర్గా పంపబడుతుంది, అది డేటాను స్ట్రింగ్ ఫార్మాట్లోకి మారుస్తుంది మరియు దానిని కన్సోల్లో ప్రదర్శిస్తుంది.
- మళ్ళీ అటాచ్ చేయండి ' పై() 'తో పద్ధతి' streamObj ” మరియు ఈసారి దాని కాల్బ్యాక్ ఫంక్షన్ ఫైల్ రీడింగ్ పూర్తయినప్పుడు ముగింపు సందేశాన్ని ప్రదర్శిస్తుంది.
ఎగువ కోడ్ని అమలు చేసిన తర్వాత రూపొందించబడిన అవుట్పుట్ ముగింపు సందేశంతో పాటుగా చదివే డేటా కన్సోల్లో ప్రదర్శించబడిందని చూపిస్తుంది:
Node.jsలో చదవగలిగే స్ట్రీమ్ల వినియోగం గురించి అంతే.
ముగింపు
Node.jsలో చదవగలిగే స్ట్రీమ్లతో పని చేయడానికి, ' క్రియేట్ రీడ్ స్ట్రీమ్() '' ద్వారా పిలవబడుతుంది fs ” మాడ్యూల్ వస్తువు. కంటెంట్ని వ్రాయవలసిన లక్ష్య ఫైల్ మార్గం తర్వాత పద్ధతి పరామితిగా పాస్ చేయబడుతుంది. దీనిని ''తో ఉపయోగించవచ్చు .పైపు() మరొక ఫైల్లో కంటెంట్ను వ్రాయడం వంటి తిరిగి పొందిన డేటాపై తదుపరి విధులను నిర్వహించడానికి ” పద్ధతి. ఈ పోస్ట్ చదవగలిగే స్ట్రీమ్లతో పని చేసే విధానాన్ని వివరించింది.