Definiera 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
});
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