Denne vejledning forklarer proceduren til at udføre routingstrategier i Node.js.
- Sådan udføres routingstrategier i Node.js
- Forudsætninger
- Routing med rammer i Node.js
- Routing uden rammer i Node.js
- Konklusion
Sådan udføres routingstrategier i Node.js
Routingen kan udføres med og uden brug af rammer eller eksterne moduler, valget mellem begge disse tilgange afhænger udelukkende af projektets krav. Der er mere kontrol over flowet af eksekverings- og hændelsesmoduler, mens der arbejdes uden rammer. Med udnyttelse af rammer reduceres kontrollen med udførelsen meget.
Forudsætninger
Som en forudsætning skal programmøren først installere node.js på deres operativsystem og initialisere node.js-projektet. For at installere Node.js på Windows- og Linux-operativsystemer kan du besøge vores ' Installer Node.js på Linux? ' og ' Installer Node.js og npm på Windows 11? ' artikler.
Nu initialiser ' npm ”-modul inde i den ønskede mappe for at opsætte Node.js-projektet ved at bruge nedenstående kommando:
npm init - og
Efter at have kørt den ovenfor angivne kommando, ' package.json ” fil oprettes automatisk, der indeholder data om det oprettede Node.js-projekt:
Routing med rammer i Node.js
Den bedste og mest brugte ramme til at implementere routing i Node.js er ' udtrykke ” modul. Det giver en masse frihed til udviklere og forbedrer din applikations sikkerhed og ydeevne. Ruten kan indstilles via flere metoder ' få() ', ' stolpe() ', ' sætte() ', ' slet() ', og ' alle() ', som er beskrevet nedenfor:
- Det ' få() ” metoden for ekspresmodulet bruges til at hente eller sende data fra en server.
- Det ' stolpe() ”-metoden bruges til at sende eller sende data over en server.
- Det ' sætte() ”-metoden for ekspresmodulet, ændrer dataene på serveren.
- Det ' slet() ”-metoden bruges til at slette en valgt del af data.
- Det ' alle() ” metode kan udføre alle de ovenfor beskrevne metoder opgaver.
For at få ovennævnte metode til at fungere, skal den nødvendige ' udtrykke ”-modulet skal installeres først. Denne installation udføres ved at køre nedenstående kommando:
npm jeg udtrykkerDet genererede output over terminalen bekræfter installationen af det nødvendige 'express'-modul:
Lad os grave i den praktiske implementering af de ovenfor diskuterede metoder.
Eksempel 1: Routing via get()-metoden
I dette eksempel er routingen blevet indstillet ved hjælp af ekspresmodulet ' få() ”-metoden for at sende en dummy-meddelelse over serveren, er koden angivet nedenfor:
konst expObj = kræve ( 'udtrykke' ) ;konst portNum = 8080 ;
konst hejApp = expObj ( ) ;
hejApp. få ( '/' , ( kræve, res ) => {
res. sende ( '
Hej! Linuxhint-fællesskab
' ) ;} ) ;
hejApp. Hør efter ( portnummer, ( ) => {
konsol. log ( `Begyndte ved $ { portNum } ` ) ;
} ) ;
Beskrivelsen af ovenstående kode er som følger:
- For det første den nødvendige ' udtrykke '-modulet importeres, og dets objekt gemmes i ' expObj ' variabler.
- Dernæst skal du oprette en ' konst ' skriv variabel og gem det lokale værtsportnummer for ' 8080 ' i det. Opret også en ekspres-app med navnet ' hejApp ”.
- Nu, for at sende anmodninger, skal du bruge ' få() '-metoden og inde i dens tilbagekaldsfunktion kalder ' sende() ” metode til at sende tilfældige beskeder over den oprettede server.
- Til sidst skal du indstille serveren over et specificeret portnummer ved at kalde ' Hør efter() ” metode. For bedre læsbarhed skal du vise en dummy-meddelelse over konsollen ved hjælp af den valgfri tilbagekaldsfunktion.
Udfør nu ovenstående kode indeholdende fil ved at køre kommandoen:
node < filnavn >Efter at have udført den indeholdende fil, som er ' proApp.js ” i vores tilfælde viser terminalen, at serveren er startet på det angivne portnummer:
Naviger nu til den lokale vært, der har et specificeret portnummer, og meddelelsen, der sendes over serveren, skal vises som vist nedenfor:
Eksempel 2: Routing Via all()-metoden
I dette eksempel er routingen blevet indstillet ved hjælp af ekspresmodulet ' alle() ” metode for at sende en dummy-meddelelse over serveren:
konst expObj = kræve ( 'udtrykke' ) ;konst portNum = 8080 ;
//Oprettelse af Express Application
konst hejApp = expObj ( ) ;
hejApp. alle ( '/' , ( kræve, res ) => {
res. alle ( '
Hej! Linuxhint-fællesskab
' ) ;} ) ;
//Sætte op
hejApp. Hør efter ( portnummer, ( ) => {
konsol. log ( `Begyndte ved $ { portNum } ` ) ;
} ) ;
Ovenstående kode er den samme som koden forklaret i ovenstående afsnit, blot ' alle() '-metoden bruges nu i stedet for ' få() ” metode. Der er ingen forskel på at arbejde som ' alle() '-metoden kan også udføre ' få() ” metode funktionalitet.
Udfør nu ovenstående kode indeholdende fil ved at køre kommandoen:
node < filnavn >Efter at have udført ovenstående kommando, viser terminalen, at serveren er startet på det angivne portnummer:
Naviger nu til den lokale vært, der har et specificeret portnummer, og meddelelsen, der skal sendes over serveren, skal vises som:
Routing uden rammer i Node.js
Routingen kan etableres uden brug af nogen ramme eller eksterne moduler som ' udtrykke ”. Standardmodulerne som ' http ” kan også bruges til at opsætte en brugerdefineret routing af din applikation. For eksempel vil ruterne for dine ansøgningssider blive indstillet i nedenstående kodestykke:
konst httpObj = kræve ( 'http' ) ;httpObj. opretteServer ( ( anmodning, svar ) => {
respons. skrivehoved ( 200 , { 'Indholdstype' : 'tekst/html' } ) ;
konst nuværende URL = anmodning. url ;
hvis ( nuværende URL === '/twitter' ) {
respons. skrive ( 'Velkommen til Twitter-siden' ) ;
respons. ende ( ) ;
}
andet hvis ( nuværende URL === '/Youtube' ) {
respons. skrive ( 'Velkommen til Youtube-siden' ) ;
respons. ende ( ) ;
}
andet {
respons. skrive ( 'Hej Linuxhint-fællesskab!' ) ;
respons. ende ( ) ;
}
} ) . Hør efter ( 8080 , ( ) => {
konsol. log ( 'server startede ved portnummer 8080.' ) ;
} ) ;
Forklaring af ovenstående kode er som følger:
- Først skal du importere ' http ' modul ved hjælp af ' kræve() ”-metoden og gemme dens objekt i en ny variabel ved navn ” httpObj ”.
- Derefter skal du ved hjælp af dette objekt oprette en server ved at kalde ' createServer() ” metode. Inde i denne metode skal du bruge en påkrævet tilbagekaldsfunktion, der indeholder to parametre, nemlig ' anmodning ' og ' respons ”.
- Bruger ' respons parameter kalder ' skrivehoved() '-metoden og sætter overskriften for typen til ' tekst/html ' og succestallet for ' 200 ” for serveren.
- Gem nu 'URL'en på den oprettede server i en ' nuværende URL variabel, der hentes ved hjælp af ' request.url ” ejendom.
- Brug ' hvis ', ' andet hvis ', og ' andet '-udsagn for at kontrollere, om URL'en, der er gemt i ' nuværende URL ” variabel slutter med de angivne navne eller ej. At slutte med specifikke navne betyder at identificere, om brugeren er på en bestemt side eller ej.
- Hvis en betingelse bliver sand, så bliver den dummy-meddelelse, der findes i disse blokke, vist på websiden.
- Indstil til sidst portnummeret for ' 8080 ” for din lokale værtsserver og vise en succesmeddelelse på terminalen.
Gem den ovenfor viste kode i den nye fil med typen indstillet til ' .js ' og udfør det ved hjælp af kommandoen:
node < filnavn >Det genererede output viser, at der er etableret routing for forskellige applikationssider uden brug af et eksternt modul eller framework:
Det handler om routingstrategierne i Node.js.
Konklusion
For at udføre routingstrategierne i Node.js, skal rammerne eller eksterne moduler som ' udtrykke ' kan bruges ved hjælp af sin ' få() ', ' stolpe() ', ' sætte() ', ' slet() ', og ' alle() ' metoder. Standardmodulet som ' http ' er også meget nyttigt at bruge ' createServer() ' metode og dens metoder som ' skrivehoved() ', ' skrive() ', og ' ende() ”. Denne vejledning har illustreret proceduren til at udføre routingstrategier i Node.js.