Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Definiera API:ets Ingångspunkt | Bygga REST API:er med Node.js och Express.js
Backendutveckling med Node.js och Express.js

bookDefiniera API:ets Ingångspunkt

Filen index.js är där vi konfigurerar vår server, definierar middleware, sätter upp rutter och hanterar fel. Den fungerar som hjärtat i vår Express-applikation.

Importera nödvändiga moduler och filer

index.js är där vi konfigurerar vår server, definierar middleware, sätter upp rutter och hanterar fel. Låt oss gå igenom koden steg för steg.

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 för JSON-parsing

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

Middlewaret express.json() tolkar inkommande JSON-förfrågningar och gör datan tillgänglig i req.body. Detta är avgörande för hantering av JSON-data i våra POST- och PUT-förfrågningar.

Routingkonfiguration

Routing definierar hur vår applikation svarar på klientförfrågningar.

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

Routing definierar hur vår applikation svarar på klientförfrågningar. I denna kodrad specificerar vi att den router som definieras i postsRoutes.js ska hantera rutter under sökvägen /api.

Middleware för felhantering

Felhantering är avgörande för att säkerställa att applikationen hanterar fel på ett kontrollerat sätt.

// 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
});
  • Detta middleware ansvarar för att fånga upp fel som uppstår under begäranshantering. Om något middleware eller route handler före detta anropar next(err), kommer detta middleware att fånga felet;
  • Det loggar felet till konsolen med console.error(err.stack);
  • Det skickar ett 500 Internal Server Error-svar till klienten, vilket indikerar att något gick fel på servern.

Starta servern

För att slutföra applikationsinställningen startas Express-servern på en angiven port.

// Start the Express server
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`); // Log a message indicating the server is running
});
  • Denna rad startar Express-servern och gör att den lyssnar på den angivna porten (PORT);
  • När servern startar loggas ett meddelande till konsolen som visar vilken port den körs på.

Komplett kod för 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 allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 4

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

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

bookDefiniera API:ets Ingångspunkt

Svep för att visa menyn

Filen index.js är där vi konfigurerar vår server, definierar middleware, sätter upp rutter och hanterar fel. Den fungerar som hjärtat i vår Express-applikation.

Importera nödvändiga moduler och filer

index.js är där vi konfigurerar vår server, definierar middleware, sätter upp rutter och hanterar fel. Låt oss gå igenom koden steg för steg.

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 för JSON-parsing

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

Middlewaret express.json() tolkar inkommande JSON-förfrågningar och gör datan tillgänglig i req.body. Detta är avgörande för hantering av JSON-data i våra POST- och PUT-förfrågningar.

Routingkonfiguration

Routing definierar hur vår applikation svarar på klientförfrågningar.

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

Routing definierar hur vår applikation svarar på klientförfrågningar. I denna kodrad specificerar vi att den router som definieras i postsRoutes.js ska hantera rutter under sökvägen /api.

Middleware för felhantering

Felhantering är avgörande för att säkerställa att applikationen hanterar fel på ett kontrollerat sätt.

// 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
});
  • Detta middleware ansvarar för att fånga upp fel som uppstår under begäranshantering. Om något middleware eller route handler före detta anropar next(err), kommer detta middleware att fånga felet;
  • Det loggar felet till konsolen med console.error(err.stack);
  • Det skickar ett 500 Internal Server Error-svar till klienten, vilket indikerar att något gick fel på servern.

Starta servern

För att slutföra applikationsinställningen startas Express-servern på en angiven port.

// Start the Express server
app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`); // Log a message indicating the server is running
});
  • Denna rad startar Express-servern och gör att den lyssnar på den angivna porten (PORT);
  • När servern startar loggas ett meddelande till konsolen som visar vilken port den körs på.

Komplett kod för 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 allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 4
some-alt