Express.js flashcards

Category sponsor

Express.js är ett snabbt, minimalistiskt och flexibelt webbramverk för Node.js. Det erbjuder en robust uppsättning funktioner för att bygga webbapplikationer och API:er, inklusive routing, middleware-stöd, template engines och HTTP-hjälpmetoder. Express.js har blivit de facto-standarden för Node.js-webbutveckling tack vare sin enkelhet, flexibilitet och rika middleware-ekosystem. Det gör det möjligt för utvecklare att enkelt skapa allt från enkla REST API:er till komplexa webbapplikationer. Express.js är designat för att vara minimalistiskt och flexibelt, vilket gör det till ett utmärkt val för utvecklare som vill ha full kontroll över sin applikationsarkitektur samtidigt som de drar nytta av en solid grund.

Vår app innehåller noggrant utvalda Express.js-intervjufrågor med fullständiga svar som effektivt förbereder dig för vilken intervju som helst som kräver kunskap om detta ramverk. IT Flashcards är inte bara ett verktyg för arbetssökande utan också ett utmärkt sätt att stärka och verifiera dina kunskaper. Regelbunden träning med appen håller dig uppdaterad med de senaste trenderna inom Node.js backend-utveckling och upprätthåller dina färdigheter i att bygga skalbara server-side applikationer.

Exempel på Express.js-flashcards från vår app

Ladda ner vår app från App Store eller Google Play för att få fler gratis flashcards eller prenumerera för tillgång till alla flashcards.

Express.js

Vad är middleware i Express.js?

Middleware i Express.js är funktioner som har tillgång till begäran-objektet (req), svar-objektet (res) och nästa middleware-funktion (next) i begärans livscykel. Middleware är viktiga komponenter i applikations- och API-strukturen i Express.js.

Middleware-funktioner kan utföra följande uppgifter:
- Köra valfri kod.
- Göra förändringar på begäran- och svar-objekten.
- Avsluta begäran-svar-cykeln.
- Anropa nästa middleware-funktion i stacken.

Om den aktuella middleware-funktionen inte avslutar begäran-svar-cykeln måste den anropa `next()` för att skicka kontrollen vidare till nästa middleware-funktion. Annars kommer begäran att lämnas hängande.

Express.js

Vilken betydelse har parametern next i Express.js middleware?

Den **next** parametern i middleware i Express.js är en funktion som, när den anropas, flyttar anropet till nästa middleware i stacken.

Om middleware-funktionen inte avslutar begäran-svar-cykeln, måste den anropa `next()` för att överlåta kontrollen till nästa middleware-funktion. Annars kommer begäran att förbli väntande.

Principen för `next()` är ganska enkel: När `next()` anropas, går exekveringen till nästa middleware på den aktuella nivån.

Exempelkod som använder next-funktionen:
app.use((req, res, next) => {
    console.log('First middleware');
    next();
});

app.use((req, res, next) => {
    console.log('Second middleware');
    res.end();
});

I exemplet ovan, efter att ha mottagit en begäran, anropar den första middleware `console.log`, sedan `next()`, vilket överlåter kontrollen till den andra middleware. I den andra middleware anropar vi `res.end()`, vilket avslutar begäran-svar-cykeln.

Funktionen `next()` kan också anropas med ett fel, vilket kommer att överlåta kontrollen till nästa felhanterings-middleware:
app.use((req, res, next) => {
    console.log('First middleware');
    next(new Error('Error'));
});

app.use((err, req, res, next) => {
    console.error(err.stack);
    res.status(500).send('Server error!');
});

I exemplet ovan, efter att ha mottagit en begäran, skapar den första middleware ett nytt fel och överlåter det till `next()`, vilket går till nästa felhanterings-middleware. Felhanterings-middleware loggar felet och returnerar ett svar till användaren.

Express.js

Hur definierar man statiska filer i Express.js?

Express.js är ett mycket konfigurerbart Node.js-ramverk designat för att underlätta skapandet av webbservrar. Det möjliggör enkel definition av statiska filer för att utöka serverns funktionalitet.

Att definiera statiska filer i Express.js är enkelt. Vi kommer att använda den inbyggda middleware-funktionen **express.static()** för detta ändamål.

För att definiera statiska filer måste vi först importera express och sedan tillämpa express.static() funktionen med sökvägen till katalogen vi vill betjäna. Vanligtvis är detta 'public'-katalogen i huvudapplikationskatalogen.
const express = require('express');
    const app = express();

    app.use(express.static('public'));

I koden ovan instruerar express.static('public') Express-servern att betjäna innehållet i 'public'-katalogen som statiska filer. När dessa filer är definierade kommer de att vara direkt tillgängliga från huvud-URL:en.

I praktiken betyder detta att om vi har en `index.html`-fil i `public`-katalogen, kommer den att vara tillgänglig på `http://localhost:3000/index.html` (förutsatt att vår server körs lokalt på port 3000). Om vi har en `styles.css`-fil i underkatalogen `css` inom `public`, kommer den att vara tillgänglig på `http://localhost:3000/css/styles.css` och så vidare.

Express.js

Vad är res.json() i Express.js och vad används det till?

**Res.json()**-funktionen i Express.js används för att skicka ett JSON-svar till klienten. Det är en speciell metod tillgänglig på response-objektet som Express skickar till den funktion som hanterar begäran.

Namnet "json" kommer från JavaScript Object Notation, vilket är ett standardformat för datautbyte över nätverket. **Res.json()**-metoden konverterar automatiskt ett JavaScript-objekt eller värde till JSON och skickar det sedan som ett HTTP-svar.

Dessutom ställer denna metod in den lämpliga Content-Type-rubriken för svaret och informerar klienten om att svaret är i JSON-format.

Här är ett exempel på kodsnutt som använder **res.json()**:
app.get('/api/data', (req, res) => {
  const data = {
    id: 1,
    name: 'Test',
  };
  
  res.json(data);
});

I exemplet ovan, när en klient gör en GET-begäran till '/api/data', kommer Express.js att returnera ett JSON-svar som innehåller `data`-objektet.

Ladda ner IT Flashcards Nu

Stärk din IT-inlärningsresa med den bästa flashkortsappen. Från grundläggande programmering till att bemästra avancerade teknologier är IT Flashcards ditt pass till IT-excellens. Ladda ner nu och lås upp din potential i dagens konkurrensutsatta tekniska värld.

Hem Blog Sponsorer Kontakt Privacy Policy Terms of Service

Copyright © 2025 IT Flashcards