Node.js ట్యుటోరియల్ - బిగినర్స్ కోసం పూర్తి గైడ్



ఈ Node.js ట్యుటోరియల్ Node.js యొక్క ప్రాథమిక నిర్మాణం, పని మరియు వివిధ మాడ్యూళ్ళ గురించి మాట్లాడుతుంది. ఇది Node.js మరియు Express.js యొక్క ఆచరణాత్మక అమలును కూడా ప్రదర్శిస్తుంది.

మీరు ఎప్పుడైనా Node.js గురించి విన్నట్లయితే, అది జావాస్క్రిప్ట్ యొక్క ప్రముఖ మరియు శక్తివంతమైన ఫ్రేమ్‌వర్క్‌లలో ఒకటి అని మీకు తెలుసు. విడుదలైనప్పటి నుండి, ఇది ఐటి మార్కెట్లో తన గొంతును పట్టుకుంటూనే ఉంది. క్రొత్త మరియు శక్తివంతమైన పరిచయంతో కూడా వంటి , , ఉల్కాపాతం మొదలైనవి, Node.js యొక్క ప్రజాదరణ ఎప్పటికీ నిలిచిపోదు. ఎందుకు ఆలోచిస్తున్నారా? సరే, ఈ Node.js ట్యుటోరియల్ సహాయంతో, నేను మీకు పూర్తి అవగాహన ఇస్తాను. కాబట్టి, Node.js తో ప్రేమలో పడటానికి సిద్ధంగా ఉండండి.

ఈ Node.js ట్యుటోరియల్‌లో, నేను ఈ క్రింది విషయాలను చర్చిస్తాను:





Node.js అంటే ఏమిటి?

Node.js అనేది అభివృద్ధి చేయబడిన శక్తివంతమైన ఫ్రేమ్‌వర్క్ Chrome యొక్క V8 జావాస్క్రిప్ట్ ఇంజిన్ ఇది జావాస్క్రిప్ట్‌ను నేరుగా స్థానిక మెషిన్ కోడ్‌లోకి కంపైల్ చేస్తుంది. ఇది సర్వర్-సైడ్ వెబ్ అనువర్తనాలను రూపొందించడానికి ఉపయోగించే తేలికపాటి ఫ్రేమ్‌వర్క్ మరియు సాధారణ సర్వర్-సైడ్ ఫంక్షనాలిటీలను అందించడానికి జావాస్క్రిప్ట్ API ని విస్తరిస్తుంది. ఇది సాధారణంగా పెద్ద ఎత్తున అనువర్తన అభివృద్ధికి, ముఖ్యంగా వీడియో స్ట్రీమింగ్ సైట్లు, సింగిల్ పేజ్ అప్లికేషన్ మరియు ఇతర వెబ్ అనువర్తనాల కోసం ఉపయోగించబడుతుంది. Node.js తయారీలను ఈవెంట్-నడిచే, నిరోధించని I / O మోడల్‌ను ఉపయోగించడం, ఇది డేటా-ఇంటెన్సివ్ రియల్ టైమ్ అనువర్తనాలకు సరైన ఎంపిక చేస్తుంది.

ఇతర ప్రోగ్రామింగ్ భాషల మాదిరిగానే, node.js ప్యాకేజీలు మరియు మాడ్యూళ్ళను ఉపయోగించుకుంటుంది. ఇవి వివిధ ఫంక్షన్లను కలిగి ఉన్న లైబ్రరీలు మరియు npm (నోడ్ ప్యాకేజీ మేనేజర్) నుండి మా కోడ్‌లోకి దిగుమతి చేయబడతాయి మరియు ప్రోగ్రామ్‌లలో ఉపయోగించబడతాయి. Node.js ని నిర్వచించే కొన్ని ప్రధాన లక్షణాలు క్రింద ఇవ్వబడ్డాయి:



Node.js యొక్క లక్షణాలు

  1. ఓపెన్ సోర్స్
    Node.js అనేది ఓపెన్ సోర్స్ ఫ్రేమ్‌వర్క్ MIT లైసెన్స్, దీనికి భారీ సంఘం మద్దతు ఇస్తుంది. Node.js అనువర్తనాలకు కొత్త సామర్థ్యాలను జోడించడానికి దీని సంఘం చాలా చురుకుగా ఉంది.
  2. సింపుల్ అండ్ ఫాస్ట్
    Google Chrome యొక్క V8 జావాస్క్రిప్ట్ ఇంజిన్‌లో Node.js నిర్మించబడినందున, దాని లైబ్రరీలు వేగంగా కోడ్ అమలు చేయగలవు.
  3. అసమకాలిక
    Node.js యొక్క అన్ని లైబ్రరీలు అసమకాలికమైనవి, అంటే Node.js ఆధారిత సర్వర్‌లు ప్రతిస్పందనను తిరిగి పంపించి, తదుపరి API కి వెళ్లడానికి API కోసం ఎప్పుడూ వేచి ఉండవు.
  4. అధిక స్కేలబిలిటీ
    ఈవెంట్ మెకానిజం కారణంగా, Node.js చాలా స్కేలబుల్ మరియు సర్వర్‌ను నిరోధించని ప్రతిస్పందనలో సహాయపడుతుంది.
  5. సింగిల్-థ్రెడ్
    ఈవెంట్ లూపింగ్ సహాయంతో, Node.js సింగిల్-థ్రెడ్ మోడల్‌ను అనుసరించగలదు. ఇది బహుళ అభ్యర్థనలను నిర్వహించడానికి ఒకే ప్రోగ్రామ్‌ను అనుమతిస్తుంది.
  6. బఫరింగ్ లేదు
    Node.js అనువర్తనాల యొక్క ప్రధాన కార్యాచరణలలో ఒకటి, ఇది ఏ డేటాను ఎప్పుడూ బఫర్ చేయదు.
  7. క్రాస్ ప్లాట్‌ఫాం
    విండోస్, మాక్ మరియు లైనక్స్ వంటి వివిధ ప్లాట్‌ఫామ్‌లపై నోడ్.జెస్‌ను సులభంగా నిర్మించవచ్చు మరియు అమలు చేయవచ్చు.

ఇప్పుడు మరింత ముందుకు సాగండి మరియు బ్రౌజర్‌లో అసలు కోడ్‌ను ఎలా ఉపయోగించాలో చూద్దాం. కానీ దీనికి ముందు, మీరు మీ సిస్టమ్స్‌లో డౌన్‌లోడ్ చేసి ఇన్‌స్టాల్ చేయాలి. పూర్తి తెలుసుకోవడానికి మీరు నా ఇతర కథనాన్ని చూడవచ్చు Node.js సంస్థాపనా విధానం .

కాబట్టి ఇప్పుడు, ఈ Node.js ట్యుటోరియల్‌లో మరింత ముందుకు వెళ్దాం, ఇక్కడ నేను Node.js యొక్క అతి ముఖ్యమైన భాగం గురించి మాట్లాడతాను, అనగా npm.

NPM (నోడ్ ప్యాకేజీ మేనేజర్)

NPM అంటే నోడ్ ప్యాకేజీ మేనేజర్, ఇది పేరు సూచించినట్లుగా Node.js ప్యాకేజీలు / మాడ్యూళ్ళకు ప్యాకేజీ నిర్వాహకుడు. నోడ్ వెర్షన్ 0.6.0 నుండి. తరువాత, నోడ్ సంస్థాపనలో npm అప్రమేయంగా జోడించబడింది. ఇది npm ని స్పష్టంగా ఇన్‌స్టాల్ చేసే ఇబ్బంది నుండి మిమ్మల్ని రక్షిస్తుంది.



NPM ప్రాథమికంగా రెండు విధాలుగా సహాయపడుతుంది:

ఉబుంటుకు ఉత్తమ జావా ఐడి
  1. Node.js ప్యాకేజీలు / మాడ్యూళ్ళ కోసం ఆన్‌లైన్ రిపోజిటరీలను అందిస్తుంది మరియు హోస్ట్ చేస్తుంది, వీటిని మా ప్రాజెక్టులలో సులభంగా డౌన్‌లోడ్ చేసుకోవచ్చు మరియు ఉపయోగించవచ్చు. మీరు వాటిని ఇక్కడ కనుగొనవచ్చు: npmjs.com
  2. వివిధ Node.js ప్యాకేజీలను వ్యవస్థాపించడానికి, Node.js సంస్కరణలను మరియు ప్యాకేజీల డిపెండెన్సీలను నిర్వహించడానికి కమాండ్ లైన్ యుటిలిటీని అందిస్తుంది.

కానీ ఇప్పుడు, ఈ మాడ్యూల్స్ సరిగ్గా ఏమిటో మీరు ఆలోచిస్తూ ఉండాలి మరియు Node.js అనువర్తనాలను రూపొందించడంలో అవి మాకు ఎలా సహాయపడతాయి. సరే, ఈ Node.js ట్యుటోరియల్ యొక్క తరువాతి విభాగంలో, నేను మీకు Node.js మాడ్యూళ్ళపై పూర్తి అవగాహన ఇస్తాను.

Node.js గుణకాలు

Node.js లోని మాడ్యూల్స్ సింగిల్ లేదా బహుళ JS ఫైళ్ళలో బండిల్ చేయబడిన వివిధ కార్యాచరణలను సూచిస్తాయి. ఈ గుణకాలు ఒక ప్రత్యేకమైన సందర్భం కలిగివుంటాయి, అందువల్ల అవి ఇతర గుణకాల పరిధిని ఎప్పుడూ జోక్యం చేసుకోవు లేదా కలుషితం చేయవు.

ఈ గుణకాలు కోడ్ పునర్వినియోగతను ప్రారంభిస్తాయి మరియు వాడుకలో సౌలభ్యాన్ని పెంచుతాయి. Node.js ప్రాథమికంగా మూడు రకాల మాడ్యూళ్ళను అందిస్తుంది:

  1. కోర్ గుణకాలు
  2. స్థానిక గుణకాలు
  3. మూడవ పార్టీ గుణకాలు

కోర్ మాడ్యూల్

Node.js చాలా కాబట్టి తేలికపాటి ఫ్రేమ్‌వర్క్, కోర్ మాడ్యూల్స్ సంపూర్ణ కనీస కార్యాచరణలను కలుపుతాయి. నోడ్ ప్రాసెస్ దాని అమలును ప్రారంభించినప్పుడు ఈ గుణకాలు సాధారణంగా లోడ్ అవుతాయి. మీరు చేయాల్సిందల్లా, ఈ కోర్ మాడ్యూళ్ళను మీ కోడ్‌లో ఉపయోగించడానికి వాటిని దిగుమతి చేయండి.

క్రింద నేను కొన్ని ముఖ్యమైన కోర్ మాడ్యూళ్ళను జాబితా చేసాను.

కోర్ మాడ్యూల్ వివరణ
http Node.js HTTP సర్వర్‌ను సృష్టించడానికి అవసరమైన తరగతులు, పద్ధతులు మరియు ఈవెంట్‌లను కలిగి ఉంటుంది
url URL రిజల్యూషన్ మరియు నోడ్‌లో పార్సింగ్ కోసం పద్ధతులను కలిగి ఉంది
ప్రశ్న నోడ్ యొక్క ప్రశ్న స్ట్రింగ్‌తో వ్యవహరించే పద్ధతులను కలిగి ఉంటుంది
మార్గం ఫైల్ మార్గాలతో వ్యవహరించే పద్ధతులను కలిగి ఉంటుంది
fs ఫైల్ I / O తో పనిచేయడానికి తరగతులు, పద్ధతులు మరియు సంఘటనలను కలిగి ఉంటుంది
ఉపయోగకరమైనది ప్రోగ్రామర్‌లకు ఉపయోగపడే యుటిలిటీ ఫంక్షన్‌లను కలిగి ఉంటుంది

దిగువ కోడ్‌ను ఉపయోగించి మీరు మీ కోర్ మాడ్యూల్‌ను లోడ్ చేయవచ్చు:

var మాడ్యూల్ = అవసరం ('module_name')

‘లోకల్ మాడ్యూల్స్’ అంటే ఏమిటో ఇప్పుడు చూద్దాం.

స్థానిక గుణకాలు

Node.js యొక్క స్థానిక మాడ్యూల్స్ కస్టమ్ మాడ్యూల్స్, ఇవి అనువర్తనంలో వినియోగదారు / డెవలపర్ చేత స్థానికంగా సృష్టించబడతాయి. ఈ మాడ్యూల్స్ విభిన్న ఫైళ్లు మరియు ఫోల్డర్‌లతో కూడిన వివిధ కార్యాచరణలను కలిగి ఉంటాయి, వీటిని NPM ఉపయోగించి Node.js కమ్యూనిటీలో సులభంగా పంపిణీ చేయవచ్చు.

ఈ గుణకాలు కోర్ మాడ్యూళ్ళకు సమానమైన రీతిలో లోడ్ చేయబడతాయి. ప్రాథమిక ఉదాహరణను ఉపయోగించి దీన్ని ఎలా చేయాలో మీకు చూపిద్దాం.

మీ అనుకూల / స్థానిక module.js ఫైల్‌ను సృష్టించండి

var details = {name: function (name) {console.log ('Name:' + name)}, domain: function (domain) {console.log ('Domain:' + domain)}} module.exports = details

మీ ప్రధాన అప్లికేషన్ ఫైల్‌లో మీ మాడ్యూల్ ఫైల్‌ను చేర్చండి.

var myLogModule = అవసరం ('./ Local_module.js') myLogModule.name ('Edureka') myLogModule.domain ('Education')

ఇప్పుడు మీరు ఈ ఫైళ్ళను దిగువ ఆదేశాన్ని ఉపయోగించి అమలు చేయవచ్చు:

నోడ్ application.js

బాహ్య గుణకాలు ఏమిటో ఇప్పుడు మీకు చూపిస్తాను.

బాహ్య గుణకాలు

మీరు బాహ్య లేదా 3 ను ఉపయోగించవచ్చుrdపార్టీ గుణకాలు NPM ద్వారా డౌన్‌లోడ్ చేయడం ద్వారా మాత్రమే. ఈ గుణకాలు సాధారణంగా ఇతర డెవలపర్లు అభివృద్ధి చేస్తారు మరియు ఉపయోగించడానికి ఉచితం. ఎక్స్‌ప్రెస్, రియాక్ట్, గల్ప్, ముంగూస్, మోచా మొదలైనవి బాహ్య బాహ్య మాడ్యూళ్ళలో కొన్ని.

3 వ పార్టీ మాడ్యూళ్ళను ప్రపంచవ్యాప్తంగా లోడ్ చేస్తోంది:

npm ఇన్‌స్టాల్ --g

మీ ప్రధాన అప్లికేషన్ ఫైల్‌లో మీ మాడ్యూల్ ఫైల్‌ను చేర్చండి:

npm install --save

JSON ఫైల్

ది package.json ఫైల్ Node.js లో మొత్తం అప్లికేషన్ యొక్క గుండె. ఇది ప్రాథమికంగా ప్రాజెక్ట్ యొక్క మెటాడేటాను కలిగి ఉన్న మానిఫెస్ట్ ఫైల్. అందువల్ల, ఈ ఫైల్‌ను అర్థం చేసుకోవడం మరియు పనిచేయడం విజయవంతమైన నోడ్ ప్రాజెక్ట్ అభివృద్ధికి చాలా ముఖ్యమైనది.

Package.json ఫైల్ సాధారణంగా అప్లికేషన్ యొక్క మెటాడేటాను కలిగి ఉంటుంది, ఇది రెండు వర్గాల క్రింద వర్గీకరించబడుతుంది:

  1. మెటాడేటా లక్షణాలను గుర్తించడం: ఇది ప్రాజెక్ట్ పేరు, ప్రస్తుత మాడ్యూల్ వెర్షన్, లైసెన్స్, ప్రాజెక్ట్ రచయిత, ప్రాజెక్ట్ వివరణ మొదలైన లక్షణాలను కలిగి ఉంటుంది.
  1. ఫైల్‌కు నేరుగా రాయడం: మీరు అవసరమైన సమాచారాన్ని ప్యాకేజీ.జోన్ ఫైల్‌లో నేరుగా వ్రాసి మీ ప్రాజెక్ట్‌లో చేర్చవచ్చు.

ఇప్పటికి మీరు నోడ్ JS అప్లికేషన్ యొక్క వివిధ భాగాలతో పరిచయం కలిగి ఉన్నారు. ఈ Node.js ట్యుటోరియల్ యొక్క తరువాతి విభాగంలో, నేను కొన్ని నోడ్ Js బేసిక్‌లను పంచుకుంటాను, తద్వారా మనం చేతులతో ప్రారంభించవచ్చు.

Node.js బేసిక్స్

Node.js జావాస్క్రిప్ట్ ఫ్రేమ్‌వర్క్ కాబట్టి, ఇది జావాస్క్రిప్ట్ సింటాక్స్‌ను ఉపయోగిస్తుంది. మీరు జావాస్క్రిప్ట్ గురించి వివరంగా తెలుసుకోవాలనుకుంటే, మీరు దీనిని సూచించవచ్చు . ప్రస్తుతానికి, నేను కొన్ని Node.js బేసిక్‌లతో మిమ్మల్ని బ్రష్ చేస్తాను:

డేటా రకాలు

ఇతర ప్రోగ్రామింగ్ భాషల మాదిరిగానే, Node.js లో వివిధ డేటాటైప్‌లు ఉన్నాయి, వీటిని ప్రిమిటివ్ మరియు నాన్-ప్రిమిటివ్ డేటాటైప్‌లుగా వర్గీకరించారు.

ఆదిమ డేటా రకాలు:

  1. స్ట్రింగ్
  2. సంఖ్య
  3. బూలియన్
  4. శూన్య
  5. నిర్వచించబడలేదు

నాన్-ప్రిమిటివ్ డేటా రకాలు:

  1. వస్తువు
  2. తేదీ
  3. అమరిక

వేరియబుల్స్

వేరియబుల్ అంటే ప్రోగ్రామ్ సమయంలో మారే విలువలను కలిగి ఉన్న ఎంటిటీలు. Node.js లో వేరియబుల్ సృష్టించడానికి, మీరు రిజర్వు చేసిన కీవర్డ్ var ను ఉపయోగించాలి. మీరు డేటా రకాన్ని కేటాయించాల్సిన అవసరం లేదు, ఎందుకంటే కంపైలర్ దాన్ని స్వయంచాలకంగా ఎంచుకుంటుంది.

సింటాక్స్:

var varName = విలువ

ఆపరేటర్లు

Node.js కింది ఆపరేటర్లకు మద్దతు ఇస్తుంది:

ఆపరేటర్ రకం ఆపరేటర్లు
అంకగణితం +, -, /, *,%, ++, -
అసైన్మెంట్ =, + =, - =, * =, / =,% =
షరతులతో కూడినది =?
పోలిక ==, === ,! = ,! ==,>,> =,<, <=,
తార్కిక &&, || ,!
బిట్వైస్ &, |, ^, ~,<>, >>>

విధులు

Node.js లోని విధులు పేరును కలిగి ఉన్న కోడ్ యొక్క బ్లాక్ మరియు ఒక నిర్దిష్ట పనిని సాధించడానికి వ్రాయబడ్డాయి. దీన్ని సృష్టించడానికి మీరు కీవర్డ్ ఫంక్షన్‌ను ఉపయోగించాలి. ఒక ఫంక్షన్ సాధారణంగా రెండు-దశల ప్రక్రియ. మొదటిది ఫంక్షన్‌ను నిర్వచించడం మరియు రెండవది దానిని ప్రారంభించడం. ఫంక్షన్‌ను సృష్టించడం మరియు ప్రారంభించడం యొక్క వాక్యనిర్మాణం క్రింద ఉంది:

ఉదాహరణ:

// ఫంక్షన్ ఫంక్షన్‌ను నిర్వచించడం display_Name (firstName, lastName) {హెచ్చరిక ('హలో' + ఫస్ట్‌నేమ్ + '' + లాస్ట్‌నేమ్)} // ఫంక్షన్‌ను ప్రారంభించడం display_Name ('పార్క్', 'జిమిన్')

వస్తువులు

ఆబ్జెక్ట్ అనేది ప్రాచీనత లేని డేటా రకం, ఇది లక్షణాలు మరియు పద్ధతుల పరంగా బహుళ విలువలను కలిగి ఉంటుంది. తరగతి యొక్క భావన లేనందున Node.js వస్తువులు స్వతంత్ర ఎంటిటీలు. మీరు ఒక వస్తువును రెండు విధాలుగా సృష్టించవచ్చు:

  1. ఆబ్జెక్ట్ లిటరల్ ఉపయోగించి
  2. ఆబ్జెక్ట్ కన్స్ట్రక్టర్‌ను ఉపయోగించడం

ఉదాహరణ:

// ఆబ్జెక్ట్ విత్ ప్రాపర్టీస్ అండ్ మెథడ్ వర్ ఉద్యోగి = {// ప్రాపర్టీస్ ఫస్ట్ నేమ్: 'మిన్హో', లాస్ట్ నేమ్: 'చోయి', వయసు: 35, జీతం: 50000, // పద్ధతి getFullName: ఫంక్షన్ () {దీన్ని తిరిగి ఇవ్వండి. మొదటి పేరు + '' + this.lastName}}

ఫైల్ సిస్టమ్

భౌతిక ఫైల్ సిస్టమ్‌ను యాక్సెస్ చేయడానికి, Node.js ఉపయోగించుకుంటుంది fs మాడ్యూల్ ప్రాథమికంగా అన్ని అసమకాలిక మరియు సమకాలిక ఫైల్ I / O ఆపరేషన్లను జాగ్రత్తగా చూసుకుంటుంది. ఈ మాడ్యూల్ క్రింది ఆదేశాన్ని ఉపయోగించి దిగుమతి అవుతుంది:

ఐఓఎస్ డెవలపర్ అంటే ఏమిటి
var fs = అవసరం ('fs')

ఫైల్ సిస్టమ్ మాడ్యూళ్ళకు కొన్ని సాధారణ ఉపయోగం:

  • ఫైళ్ళను చదవండి
    1. fs.readFile ()
var http = required ('http') var fs = required ('fs') http.createServer (ఫంక్షన్ (req, res) {fs.readFile ('script.txt', ఫంక్షన్ (తప్పు, డేటా) {res.writeHead ( 200, content 'కంటెంట్-రకం': 'టెక్స్ట్ / html' res) res.write (డేటా) res.end ()})}). వినండి (8080)
  • ఫైళ్ళను సృష్టించండి
    1. appendFile ()
    2. ఓపెన్ ()
    3. writeFile ()
  • ఫైళ్ళను నవీకరించండి
    1. fs.appendFile ()
    2. fs.writeFile ()
  • ఫైళ్ళను తొలగించండి
    1. fs.unlink ()
  • ఫైళ్ళ పేరు మార్చండి
    1. fs.rename ()

కాబట్టి, ఈ ఆదేశాలతో, మీరు మీ ఫైళ్ళలో అవసరమైన అన్ని ఆపరేషన్లను చాలా చక్కగా చేయవచ్చు. ఇప్పుడు ఈ Node.js ట్యుటోరియల్‌తో మరింత ముందుకు వెళ్దాం మరియు ఈవెంట్‌లు ఏమిటి మరియు అవి Node.js లో ఎలా నిర్వహించబడుతున్నాయో చూద్దాం.

సంఘటనలు

నేను ఇప్పటికే చెప్పినట్లుగా, Node.js అనువర్తనాలు సింగిల్ థ్రెడ్ మరియు ఈవెంట్ నడిచేవి. ఈవెంట్ నడిచేది కనుక నోడ్.జెస్ సమ్మతికి మద్దతు ఇస్తుంది, తద్వారా ఈవెంట్‌లు మరియు కాల్‌బ్యాక్‌ల వంటి భావనలను ఉపయోగించుకుంటుంది. అసిన్క్ ఫంక్షన్ కాల్స్ అప్లికేషన్ అంతటా సమన్వయాన్ని నిర్వహించడానికి Node.js కు సహాయపడతాయి.

సాధారణంగా, ఒక Node.js అనువర్తనంలో, సంఘటనల కోసం వేచి ఉండి, వినే ఒక ప్రధాన లూప్ ఉంది మరియు ఏదైనా సంఘటన పూర్తయిన తర్వాత, అది వెంటనే బ్యాక్ ఫంక్షన్‌ను ప్రారంభిస్తుంది.

రేఖాచిత్రం క్రింద Node.js లో సంఘటనలు ఎలా నడపబడుతున్నాయో సూచిస్తుంది.

థ్రెడ్ మోడల్ - Node.js ట్యుటోరియల్ - ఎడురేకా

మీరు ఇక్కడ గమనించవలసిన ఒక విషయం ఏమిటంటే, సంఘటనలు బ్యాక్‌బ్యాక్ ఫంక్షన్ల మాదిరిగానే కనిపిస్తున్నప్పటికీ, వాటి కార్యాచరణలో తేడా ఉంది. అసమకాలిక ఫంక్షన్ తిరిగి వచ్చినప్పుడు దాని ఫలితాలను కాల్‌బ్యాక్‌లు మరోవైపు ఈవెంట్ హ్యాండ్లింగ్ పూర్తిగా పరిశీలకుడి నమూనాపై పనిచేస్తుంది. మరియు Node.js లో, సంఘటనలను వినే పద్ధతులను పరిశీలకులు అంటారు. క్షణం, ఒక సంఘటన ప్రేరేపించబడింది, దాని వినేవారి ఫంక్షన్ స్వయంచాలకంగా అమలు చేయడం ప్రారంభిస్తుంది. ఈవెంట్ మాడ్యూల్స్ మరియు ఈవెంట్ఎమిటర్ క్లాస్ ఈవెంట్ ఇన్ శ్రోతలతో ఈవెంట్‌లను బంధించడానికి ఉపయోగించే బహుళ అంతర్నిర్మిత ఈవెంట్‌లను అందిస్తాయి. దాని కోసం నేను వాక్యనిర్మాణాన్ని వ్రాశాను.

ఈవెంట్ వినేవారికి ఈవెంట్‌ను బంధించడం

// ఈవెంట్స్ మాడ్యూల్ దిగుమతి var my_Events = అవసరం ('ఈవెంట్స్') // ఈవెంట్ ఎమిటర్ ఆబ్జెక్ట్ సృష్టించండి var my_EveEmitter = new my_Events.EventEmitter ()

ఈవెంట్ హ్యాండ్లర్‌ను ఈవెంట్‌కు బంధించడం

// బైండింగ్ ఈవెంట్ మరియు ఈవెంట్ హ్యాండ్లర్ my_EveEmitter.on ('eventName', eventHandler)

ఒక సంఘటనను కాల్చడం

// ఈవెంట్‌ను కాల్చండి my_EveEmitter.emit ('eventName')

ఇప్పుడు ఈ Node.js ఈవెంట్ విభాగంలో నేను చర్చించిన విషయాలను అమలు చేయడానికి ప్రయత్నిద్దాం.కింది కోడ్ Node.js లో ఈవెంట్ ఎగ్జిక్యూషన్ యొక్క సాధారణ ప్రాతినిధ్యం చూపిస్తుంది.

var ఉద్గారిణి = అవసరం ('సంఘటనలు'). . సమాచారం) {console.log ('+ సమాచారం కోసం ప్రక్రియను ప్రారంభిస్తోంది)}) it.on (' AfterProcess ', ఫంక్షన్ (సమాచారం) {console.log (' + సమాచారం కోసం ప్రాసెసింగ్ పూర్తి చేస్తోంది)

ఈ Node.js ట్యుటోరియల్ యొక్క తరువాతి విభాగంలో, HTTP మాడ్యూల్ అని పిలువబడే Node.js యొక్క అతి ముఖ్యమైన మాడ్యూల్ గురించి మీకు అంతర్దృష్టులను ఇస్తాను.

HTTP మాడ్యూల్

సాధారణంగా, సర్వర్-ఆధారిత అనువర్తనాలను అభివృద్ధి చేయడానికి Node.js ఉపయోగించబడుతుంది. మాడ్యూల్ ఉపయోగించి, మీరు క్లయింట్ అభ్యర్థనలకు ప్రతిస్పందించగల వెబ్ సర్వర్‌లను సులభంగా సృష్టించవచ్చు. అందువల్ల ఇది వెబ్ మాడ్యూల్‌కు కూడా సూచించబడుతుంది మరియు సర్వర్ అభ్యర్థనలను ప్రాసెస్ చేయడంలో Node.js ను సులభతరం చేసే HTTP మరియు అభ్యర్థన వంటి మాడ్యూళ్ళను అందిస్తుంది.

దిగువ కోడ్‌ను వ్రాయడం ద్వారా మీరు ఈ మాడ్యూల్‌ను మీ Node.js అప్లికేషన్‌లో సులభంగా చేర్చవచ్చు:

var http = అవసరం ('http')

క్రింద నేను ఒక కోడ్ వ్రాసాను, ఇది Node.js లో వెబ్ సర్వర్ ఎలా అభివృద్ధి చెందిందో చూపిస్తుంది.

// కాలింగ్ http లైబ్రరీ var http = required ('http') var url = required ('url') // సర్వర్ సృష్టిస్తోంది var var server = http.createServer (ఫంక్షన్ (req, res) {// కంటెంట్ హెడర్ సెట్ చేస్తుంది res.writeHead ( 200, ('కంటెంట్-రకం', 'టెక్స్ట్ / html')) var q = url.parse (req.url, true) .query var txt = q.year + '' + q.month // ప్రతిస్పందనకు స్ట్రింగ్ పంపండి res.end (txt) //) // 8082 ను సర్వర్ లిజనింగ్ పోర్ట్ సర్వర్‌గా కేటాయించడం. లిస్టెన్ (8082)

ఈ Node.js ట్యుటోరియల్ యొక్క తరువాతి విభాగంలో, నేను సర్వర్-సైడ్ వెబ్ అప్లికేషన్ అభివృద్ధికి ఎక్కువగా ఉపయోగించే ఎక్స్‌ప్రెస్.జెస్ గురించి మాట్లాడుతున్నాను.

Express.js

ఎక్స్‌ప్రెస్.జెస్ అనేది సర్వర్-సైడ్ అనువర్తనాల్లో సర్వర్ మరియు మార్గాల మధ్య డేటా ప్రవాహాన్ని నిర్వహించడానికి వీలు కల్పించే నోడ్.జెస్ పైన నిర్మించిన ఫ్రేమ్‌వర్క్. ఇది తేలికైన మరియు సౌకర్యవంతమైన ఫ్రేమ్‌వర్క్, ఇది వెబ్‌కు అవసరమైన విస్తృత శ్రేణి లక్షణాలను మరియు మొబైల్ అప్లికేషన్ అభివృద్ధిని అందిస్తుంది.

Express.js అని పిలువబడే Node.js యొక్క మిడిల్‌వేర్ మాడ్యూల్‌పై అభివృద్ధి చేయబడింది కనెక్ట్ చేయండి . కనెక్ట్ మాడ్యూల్ మరింత ఉపయోగించుకుంటుంది http Node.js తో కమ్యూనికేట్ చేయడానికి మాడ్యూల్. అందువల్ల, మీరు కనెక్ట్ బేస్డ్ మిడిల్‌వేర్ మాడ్యూళ్ళతో పనిచేస్తుంటే, మీరు ఎక్స్‌ప్రెస్.జెస్‌తో సులభంగా కలిసిపోవచ్చు.

జావాలో యాదృచ్ఛిక స్ట్రింగ్‌ను ఎలా ఉత్పత్తి చేయాలి

కాదు, ఇది మాత్రమే, Express.js యొక్క కొన్ని ప్రధాన ప్రయోజనాలు:

  • వెబ్ అప్లికేషన్ అభివృద్ధిని వేగంగా చేస్తుంది
  • సింగిల్-పేజ్, బహుళ-పేజీ మరియు హైబ్రిడ్ రకాల మొబైల్ మరియు వెబ్ అప్లికేషన్‌ను రూపొందించడంలో సహాయపడుతుంది
  • ఎక్స్‌ప్రెస్ జాడే మరియు ఇజెఎస్ అనే రెండు టెంప్లేటింగ్ ఇంజిన్‌లను అందిస్తుంది
  • ఎక్స్‌ప్రెస్ మోడల్-వ్యూ-కంట్రోలర్ (ఎంవిసి) నిర్మాణాన్ని అనుసరిస్తుంది
  • మొంగోడిబి, రెడిస్, మైఎస్క్యూల్ వంటి డేటాబేస్లతో అనుసంధానం చేస్తుంది
  • మిడిల్‌వేర్ నిర్వహణలో లోపం నిర్వచిస్తుంది
  • అనువర్తనానికి కాన్ఫిగరేషన్ మరియు అనుకూలీకరణను సులభతరం చేస్తుంది.

ఈ అన్ని లక్షణాలతో, ఎక్స్‌ప్రెస్ మీన్ స్టాక్‌లో బ్యాకెండ్ భాగం యొక్క బాధ్యత తీసుకుంటుంది. మీన్ స్టాక్ అనేది డైనమిక్ వెబ్‌సైట్లు మరియు వెబ్ అనువర్తనాలను రూపొందించడానికి ఉపయోగించే ఓపెన్ సోర్స్ జావాస్క్రిప్ట్ సాఫ్ట్‌వేర్ స్టాక్. ఇక్కడ, అర్థం ఉన్నచో ఓం ongoDB, IS xpress.js, TO ngularJS, మరియు ఎన్ ode.js.

మన పనిని సులభతరం చేయడానికి ఎక్స్ప్రెస్.జెస్ నోడ్.జెస్ తో ఎలా పనిచేస్తుందో అర్థం చేసుకోవడానికి ఇప్పుడు ఒక సాధారణ ఉదాహరణ చూద్దాం. మీరు Express.js తో పనిచేయడం ప్రారంభించడానికి ముందు, మీరు దీన్ని మీ సిస్టమ్‌లో ఇన్‌స్టాల్ చేయాలి.

ప్రపంచవ్యాప్తంగా Express.js ను వ్యవస్థాపించడానికి మీరు ఈ క్రింది ఆదేశాన్ని ఉపయోగించవచ్చు:

npm ఇన్‌స్టాల్ -g ఎక్స్‌ప్రెస్

లేదా, మీరు దీన్ని మీ ప్రాజెక్ట్ ఫోల్డర్‌లో స్థానికంగా ఇన్‌స్టాల్ చేయాలనుకుంటే, మీరు ఈ క్రింది ఆదేశాన్ని అమలు చేయాలి:

npm ఇన్‌స్టాల్ ఎక్స్‌ప్రెస్ - సేవ్

మేము అన్ని సన్నాహాలతో పూర్తి చేసినందున, ఇప్పుడు నేరుగా ఆచరణాత్మక అమలులోకి వెళ్దాం. ఇక్కడ, నేను Node.js మరియు Express.js ఉపయోగించి సరళమైన వినియోగదారు ప్రామాణీకరణ అనువర్తనాన్ని చూపుతాను.

Express.js తో Node.js ట్యుటోరియల్ స్టెప్ బై స్టెప్ అప్లికేషన్ డెవలప్మెంట్

దీని కోసం, మనకు దిగువ ఫైల్స్ అవసరం:

  • package.json
  • script.js
  • వీక్షణలు
    • index.jade
    • login.jade
    • safe.jade
    • unauthorized.jade
    • welcome.jade
  • లిబ్
    • మార్గాలు. js

కాబట్టి, ప్రారంభిద్దాం package.json .

author 'రచయిత': 'ఎడురేకా', 'పేరు': 'ఎక్స్‌ప్రెస్_డెమో', 'వివరణ': 'ఎక్స్‌ప్రెస్ విత్ నోడ్.జెస్', 'వెర్షన్': '0.0.0', 'స్క్రిప్ట్స్': {'స్టార్ట్': 'నోడ్ script.js '},' ఇంజన్లు ': {' నోడ్ ':' ~ 0.4.12 '},' డిపెండెన్సీలు ': {' కనెక్ట్-ఫ్లాష్ ':' ^ 0.1.1 ',' కుకీ-పార్సర్ ':' ^ 1.4 .3 ',' ఎక్స్‌ప్రెస్ ':' ^ 3.21.2 ',' జాడే ':' ^ 0.20.3 ',' రీక్-ఫ్లాష్ ':' 0.0.3 '},' devDependencies ': {}}

తరువాత, మీరు సృష్టించాలి script.js .

var ఎక్స్ప్రెస్ = అవసరం ('ఎక్స్ప్రెస్') var http = need ('http') var port = 8999 var app = express () const flash = required ('connect-flash') var cookieParser = required ('కుకీ-పార్సర్') var సర్వర్ = http.createServer (అనువర్తనం) ఫంక్షన్ checkAuth (req, res, next) {console.log ('checkAuth' + req.url) // లాగిన్ అవ్వని వారికి సేవ చేయవద్దు / భద్రపరచవద్దు (req.url = == '/ సురక్షితం' && (! req.session ||! req.session.authenticated)) {res.render ('అనధికార', {స్థితి: 403}) తిరిగి} తదుపరి ()} app.use (ఫ్లాష్ () ) app.use (కుకీపార్సర్ ()) app.use (express.session ({secret: 'example'})) app.use (express.bodyParser ()) app.use (checkAuth) app.use (app.router) app.set ('వ్యూ ఇంజిన్', 'జాడే') app.set ('వ్యూ ఆప్షన్స్', {లేఅవుట్: తప్పుడు}) అవసరం ('./ lib / route.js') (అనువర్తనం) app.listen (పోర్ట్) కన్సోల్ .log ('పోర్ట్% s లో నోడ్ లిజనింగ్', పోర్ట్)

ఇప్పుడు, వీక్షణ అనే ఫోల్డర్‌ను సృష్టించండి, దీని కింద మీరు వివిధ పేజీ వీక్షణలకు బాధ్యత వహించే జాడే ఫైల్‌లను జోడిస్తారు. మీరు సృష్టించాల్సిన మొదటి వీక్షణ ఫైల్ index.jade .

!!! 5 html (lang = 'en') హెడ్ టైటిల్ యూజర్ ప్రామాణీకరణ ఉదాహరణ బాడీ h1 సెంటర్ ఎక్స్‌ప్రెస్ h3 ను ఉపయోగించి ప్రామాణీకరణ డెమో h4 ul నావిగేట్ చేయండి: a (href = '/ safe') సురక్షిత కంటెంట్ li: a (href = '/ welcome') స్వాగతం పేజీ li: a (href = '/ logout') లాగ్అవుట్

ఇప్పుడు, సృష్టించండి login.jade ఫైల్.

!!! 5 html (lang = 'en') హెడ్ టైటిల్ ఎక్స్‌ప్రెస్ ప్రామాణీకరణ ఉదాహరణ బాడీ h1 సెంటర్ ఈ ఎక్స్‌ప్రెస్ ప్రామాణీకరణ ఉదాహరణ కేంద్రానికి సైన్-ఇన్ చేయండి వినియోగదారు వినియోగదారు పేరు కోసం మరియు పాస్ పాస్వర్డ్ కోసం. ఫారం (పద్ధతి = 'పోస్ట్') పి లేబుల్ (= = వినియోగదారు పేరు కోసం) ఇమెయిల్ చిరునామా ఇన్పుట్ (రకం = 'టెక్స్ట్', పేరు = 'వినియోగదారు పేరు', తరగతి = 'రూపం-నియంత్రణ', ఐడి = 'ఉదాహరణఇన్‌పుట్ పాస్‌వర్డ్ 1', ప్లేస్‌హోల్డర్ = ' ఇమెయిల్ ', style =' width: 400px ') p సెంటర్ లేబుల్ (= = password' కోసం) పాస్‌వర్డ్ ఇన్‌పుట్ (రకం = 'పాస్‌వర్డ్', పేరు = 'పాస్‌వర్డ్', తరగతి = 'ఫారమ్-కంట్రోల్', ఐడి = 'ఉదాహరణఇన్‌పుట్ పాస్‌వర్డ్ 1', ప్లేస్‌హోల్డర్ = 'పాస్‌వర్డ్', స్టైల్ = 'వెడల్పు: 400 పిక్స్‌') పి సెంటర్ సమర్పించండి - ఫ్లాష్ h4 లోని ప్రతి సందేశం (శైలి = 'రంగు: ఎరుపు') # {సందేశం}

తదుపరి దశ సృష్టించడం welcome.jade .

!!! 5 html (lang = 'en') హెడ్ టైటిల్ యూజర్ ప్రామాణీకరణ ఉదాహరణ బాడీ h1 సెంటర్ ఎడురేకా ట్యుటోరియల్‌కు స్వాగతం!

తరువాత, సృష్టించండి safe.jade ఫైల్.

!!! 5 html (lang = 'en') హెడ్ టైటిల్ ఎక్స్‌ప్రెస్ ప్రామాణీకరణ ఉదాహరణ బాడీ h1 సెంటర్ హాయ్, సురక్షిత వినియోగదారు. p ul li కి నావిగేట్ చేయండి: a (href = '/ safe') సురక్షిత కంటెంట్ li: a (href = '/ welcome') స్వాగతం పేజీ li: a (href = '/ logout') లాగ్అవుట్

ఇప్పుడు, సృష్టించండి unauthorized.jade ఫైల్.

!!! 5 html (lang = 'en') హెడ్ టైటిల్ యూజర్ ప్రామాణీకరణ ఉదాహరణ బాడీ h1 సెంటర్ అనధికార p ఈ పేజీని చూడటానికి మీకు అనధికారికం. p దయచేసి ' కొనసాగించడానికి

ఇప్పుడు, మీరు ఫోల్డర్‌ను సృష్టించి దానికి పేరు పెట్టాలి లిబ్ . ఇప్పుడు, ఒక సృష్టించండి route.js అన్ని పేజీలను మ్యాప్ చేసే ఫైల్.

var util = required ('util') module.exports = function (app) {app.get ('/', ఫంక్షన్ (req, res, next) {res.render ('index')}) app.get (' / welcome ', ఫంక్షన్ (req, res, next) {res.render (' welcome ') app) app.get (' / safe ', ఫంక్షన్ (req, res, next) {res.render (' safe ')} ) app.get ('/ లాగిన్', ఫంక్షన్ (req, res, next) {res.render ('లాగిన్', {ఫ్లాష్: req.flash ()}) app) app.post ('/ లాగిన్', ఫంక్షన్ ( req, res, next) {// మీరు ఇక్కడ ఉంటే డేటాబేస్ లుక్-అప్ లేదా మరింత స్కేలబుల్ ఏదైనా చేయాలనుకోవచ్చు (req.body.username && req.body.username === 'user' && req.body.password && req.body.password === 'pass') {req.session.authenticated = true res.redirect ('/ safe')} else {req.flash ('లోపం', 'వినియోగదారు పేరు మరియు పాస్‌వర్డ్ తప్పు') res. దారిమార్పు ('/ లాగిన్') app}) app.get ('/ logout', ఫంక్షన్ (req, res, next) re req.session.authenticated res.redirect ('/')}) delete

ఇప్పుడు మీరు ఈ కోడ్‌ను మీ స్వంతంగా అమలు చేయాలనుకుంటే, మీరు దీన్ని ఇక్కడ నుండి డౌన్‌లోడ్ చేసుకోవచ్చు: Node.js ట్యుటోరియల్ PDF .

దీనితో, మేము ఈ Node.js ట్యుటోరియల్ ముగింపుకు వచ్చాము. నేను నోడ్.జెస్ యొక్క భావనలను భూమి నుండి వివరించగలిగానని ఆశిస్తున్నాను.

మీరు ఈ “Node.js ట్యుటోరియల్‌ని కనుగొంటే ”సంబంధిత, చూడండి ప్రపంచవ్యాప్తంగా 250,000 కంటే ఎక్కువ సంతృప్తికరమైన అభ్యాసకుల నెట్‌వర్క్‌తో విశ్వసనీయ ఆన్‌లైన్ లెర్నింగ్ సంస్థ ఎడురేకా చేత.

మాకు ప్రశ్న ఉందా? దయచేసి ఈ Node.js ట్యుటోరియల్ యొక్క వ్యాఖ్యల విభాగంలో పేర్కొనండి మరియు మేము మిమ్మల్ని సంప్రదిస్తాము.