Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Definering af API'ets Entry Point | Opbygning af REST API'er med Node.js og Express.js
Backend-Udvikling med Node.js og Express.js

bookDefinering af API'ets Entry Point

Filen index.js er stedet, hvor vi konfigurerer vores server, definerer middleware, opsætter ruter og håndterer fejl. Den fungerer som hjertet i vores Express-applikation.

Importér nødvendige moduler og filer

index.js er stedet, hvor vi konfigurerer vores server, definerer middleware, opsætter ruter og håndterer fejl. Lad os gennemgå koden trin for trin.

const express = require("express"); // Import the `Express` framework
const app = express(); // Create an `Express` application instance
const router = require("./routes/postsRoutes"); // Import the `router` module for posts
const PORT = process.env.PORT || 3000; // Define the port for the server

Middleware til JSON-parsing

app.use(express.json()); // Use the `express.json()` middleware for parsing JSON requests

Middleware-funktionen express.json() parser indkommende JSON-forespørgsler og gør dataene tilgængelige i req.body. Dette er afgørende for håndtering af JSON-data i vores POST- og PUT-forespørgsler.

Ruteopsætning

Routing definerer, hvordan vores applikation reagerer på klientforespørgsler.

app.use("/api", router); // Use the router for handling routes under the `"/api"` path

Routing definerer, hvordan vores applikation reagerer på klientforespørgsler. I denne kodelinje angiver vi, at den router, der er defineret i postsRoutes.js, skal håndtere ruter under stien /api.

Middleware til fejlhåndtering

Fejlhåndtering er afgørende for at sikre, at vores applikation håndterer fejl på en hensigtsmæssig måde.

// Error handling middleware
app.use((err, req, res, next) => {
  console.error(err.stack); // Log the error to the console
  res.status(500).json({ error: "Internal Server Error" }); // Send a 500 Internal Server Error response
});
  • Denne middleware er ansvarlig for at opfange fejl, der opstår under behandlingen af forespørgsler. Hvis en middleware eller rutehåndtering før denne kalder next(err), vil denne middleware opfange fejlen;
  • Den logger fejlen til konsollen ved hjælp af console.error(err.stack);
  • Den sender et 500 Internal Server Error-svar til klienten, hvilket indikerer, at der opstod en fejl på serveren.

Start af serveren

For at fuldføre opsætningen af applikationen startes Express-serveren på en angivet port.

// Start the Express server
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`); // Log a message indicating the server is running
});
  • Denne linje starter Express-serveren og får den til at lytte på den angivne port (PORT);
  • Når serveren starter, logges en besked til konsollen, der angiver hvilken port den kører på.

Komplet kode for index.js-filen

// Import required modules and files
const express = require("express"); // Import the `Express` framework
const app = express(); // Create an `Express` application instance
const router = require("./routes/postsRoutes"); // Import the `router` module for posts
const PORT = process.env.PORT || 3000; // Define the port for the server

app.use(express.json()); // Use the `express.json()` middleware for parsing JSON requests

app.use("/api", router); // Use the `router` for handling routes under the `"/api"` path

// Error handling middleware
app.use((err, req, res, next) => {
  console.error(err.stack); // Log the error to the console
  res.status(500).json({ error: "Internal Server Error" }); // Send a `500 Internal Server Error` response
});

// Start the Express server
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`); // Log a message indicating the server is running
});

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 4

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain what each part of the index.js file does in more detail?

What is the purpose of the postsRoutes.js file that's being imported?

How does the error handling middleware work in this setup?

Awesome!

Completion rate improved to 2.56

bookDefinering af API'ets Entry Point

Stryg for at vise menuen

Filen index.js er stedet, hvor vi konfigurerer vores server, definerer middleware, opsætter ruter og håndterer fejl. Den fungerer som hjertet i vores Express-applikation.

Importér nødvendige moduler og filer

index.js er stedet, hvor vi konfigurerer vores server, definerer middleware, opsætter ruter og håndterer fejl. Lad os gennemgå koden trin for trin.

const express = require("express"); // Import the `Express` framework
const app = express(); // Create an `Express` application instance
const router = require("./routes/postsRoutes"); // Import the `router` module for posts
const PORT = process.env.PORT || 3000; // Define the port for the server

Middleware til JSON-parsing

app.use(express.json()); // Use the `express.json()` middleware for parsing JSON requests

Middleware-funktionen express.json() parser indkommende JSON-forespørgsler og gør dataene tilgængelige i req.body. Dette er afgørende for håndtering af JSON-data i vores POST- og PUT-forespørgsler.

Ruteopsætning

Routing definerer, hvordan vores applikation reagerer på klientforespørgsler.

app.use("/api", router); // Use the router for handling routes under the `"/api"` path

Routing definerer, hvordan vores applikation reagerer på klientforespørgsler. I denne kodelinje angiver vi, at den router, der er defineret i postsRoutes.js, skal håndtere ruter under stien /api.

Middleware til fejlhåndtering

Fejlhåndtering er afgørende for at sikre, at vores applikation håndterer fejl på en hensigtsmæssig måde.

// Error handling middleware
app.use((err, req, res, next) => {
  console.error(err.stack); // Log the error to the console
  res.status(500).json({ error: "Internal Server Error" }); // Send a 500 Internal Server Error response
});
  • Denne middleware er ansvarlig for at opfange fejl, der opstår under behandlingen af forespørgsler. Hvis en middleware eller rutehåndtering før denne kalder next(err), vil denne middleware opfange fejlen;
  • Den logger fejlen til konsollen ved hjælp af console.error(err.stack);
  • Den sender et 500 Internal Server Error-svar til klienten, hvilket indikerer, at der opstod en fejl på serveren.

Start af serveren

For at fuldføre opsætningen af applikationen startes Express-serveren på en angivet port.

// Start the Express server
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`); // Log a message indicating the server is running
});
  • Denne linje starter Express-serveren og får den til at lytte på den angivne port (PORT);
  • Når serveren starter, logges en besked til konsollen, der angiver hvilken port den kører på.

Komplet kode for index.js-filen

// Import required modules and files
const express = require("express"); // Import the `Express` framework
const app = express(); // Create an `Express` application instance
const router = require("./routes/postsRoutes"); // Import the `router` module for posts
const PORT = process.env.PORT || 3000; // Define the port for the server

app.use(express.json()); // Use the `express.json()` middleware for parsing JSON requests

app.use("/api", router); // Use the `router` for handling routes under the `"/api"` path

// Error handling middleware
app.use((err, req, res, next) => {
  console.error(err.stack); // Log the error to the console
  res.status(500).json({ error: "Internal Server Error" }); // Send a `500 Internal Server Error` response
});

// Start the Express server
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`); // Log a message indicating the server is running
});

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 4
some-alt