Introduktion till Middleware i Express.js
Svep för att visa menyn
Förståelse av middleware
Middleware gör det möjligt att bearbeta förfrågningar innan de når routhanterare. Det fungerar som ett filter för inkommande förfrågningar och ger ett sätt att utföra olika uppgifter i begäran-svar-cykeln. Middleware-funktioner tar tre argument: ett begärandeobjekt (req), ett svarsobjekt (res) och en next-funktion, som används för att föra kontrollen vidare till nästa middleware i kedjan.
Föreställ dig ett vattenrör genom vilket vatten strömmar. Vatten pumpas in i ena änden av röret och passerar genom tryckmätare och ventiler, vår middleware, innan det når sin destination – vårt glas. Den viktiga poängen med denna analogi är att ordningen på dessa tryckmätare och ventiler spelar roll.
På samma sätt körs middleware-funktioner i Express.js i en specifik ordning, vilket gör ordningen för middleware-registrering avgörande för applikationens funktionalitet.
Middleware i praktiken
Vi lägger till vår egen middleware i appen innan vi anropar någon route.
app.use((req, res, next) => {
console.log('Our middleware');
next();
});
Denna funktion gör ingenting, den låter bara flödet passera igenom sig, men vårt meddelande kommer alltid att visas i konsolen.
Denna funktion utför ingen specifik uppgift; den skickar bara strömmen vidare genom sig själv. Dock illustrerar den hur middleware fungerar i Express.js-flödet. I detta exempel kommer Our middleware att loggas till konsolen varje gång en begäran görs till vår Express.js-applikation.
Middleware Syfte
Middleware kan ha olika syften i en Express.js-applikation, inklusive:
- Loggning: Middleware kan logga begäransdetaljer som HTTP-metod, URL och tidsstämpel, vilket ger insikt i trafiken som din server hanterar;
- Autentisering: Middleware kan kontrollera om en användare är autentiserad innan åtkomst till vissa rutter tillåts. Detta används ofta för att skydda känsliga delar av din applikation;
- Validering: Middleware kan validera begäransdata innan den behandlas. Till exempel kan den kontrollera om data som skickas i en POST-begäran har rätt format;
- Felfångst: Middleware kan fånga upp och hantera fel som uppstår under begäranshantering. Detta säkerställer att din applikation inte kraschar vid oväntade problem;
- CORS (Cross-Origin Resource Sharing): Middleware kan lägga till CORS-rubriker i svaren, vilket tillåter eller nekar begäranden från olika domäner. Detta är viktigt för att säkra dina API:er och möjliggöra åtkomst från webbsidor som är värdade på olika ursprung.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Introduktion till Middleware i Express.js
Förståelse av middleware
Middleware gör det möjligt att bearbeta förfrågningar innan de når routhanterare. Det fungerar som ett filter för inkommande förfrågningar och ger ett sätt att utföra olika uppgifter i begäran-svar-cykeln. Middleware-funktioner tar tre argument: ett begärandeobjekt (req), ett svarsobjekt (res) och en next-funktion, som används för att föra kontrollen vidare till nästa middleware i kedjan.
Föreställ dig ett vattenrör genom vilket vatten strömmar. Vatten pumpas in i ena änden av röret och passerar genom tryckmätare och ventiler, vår middleware, innan det når sin destination – vårt glas. Den viktiga poängen med denna analogi är att ordningen på dessa tryckmätare och ventiler spelar roll.
På samma sätt körs middleware-funktioner i Express.js i en specifik ordning, vilket gör ordningen för middleware-registrering avgörande för applikationens funktionalitet.
Middleware i praktiken
Vi lägger till vår egen middleware i appen innan vi anropar någon route.
app.use((req, res, next) => {
console.log('Our middleware');
next();
});
Denna funktion gör ingenting, den låter bara flödet passera igenom sig, men vårt meddelande kommer alltid att visas i konsolen.
Denna funktion utför ingen specifik uppgift; den skickar bara strömmen vidare genom sig själv. Dock illustrerar den hur middleware fungerar i Express.js-flödet. I detta exempel kommer Our middleware att loggas till konsolen varje gång en begäran görs till vår Express.js-applikation.
Middleware Syfte
Middleware kan ha olika syften i en Express.js-applikation, inklusive:
- Loggning: Middleware kan logga begäransdetaljer som HTTP-metod, URL och tidsstämpel, vilket ger insikt i trafiken som din server hanterar;
- Autentisering: Middleware kan kontrollera om en användare är autentiserad innan åtkomst till vissa rutter tillåts. Detta används ofta för att skydda känsliga delar av din applikation;
- Validering: Middleware kan validera begäransdata innan den behandlas. Till exempel kan den kontrollera om data som skickas i en POST-begäran har rätt format;
- Felfångst: Middleware kan fånga upp och hantera fel som uppstår under begäranshantering. Detta säkerställer att din applikation inte kraschar vid oväntade problem;
- CORS (Cross-Origin Resource Sharing): Middleware kan lägga till CORS-rubriker i svaren, vilket tillåter eller nekar begäranden från olika domäner. Detta är viktigt för att säkra dina API:er och möjliggöra åtkomst från webbsidor som är värdade på olika ursprung.
Tack för dina kommentarer!