Визначення Точки Входу API
Свайпніть щоб показати меню
index.js — це файл, у якому налаштовується сервер, визначаються проміжне програмне забезпечення (middleware), маршрути та обробка помилок. Він виконує роль ядра додатка Express.
Імпорт необхідних модулів та файлів
index.js — це місце, де налаштовується сервер, визначаються middleware, маршрути та обробка помилок. Розглянемо код поетапно.
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
Мідлвар для розбору JSON
app.use(express.json()); // Use the `express.json()` middleware for parsing JSON requests
Мідлвар express.json() розбирає вхідні JSON-запити та робить дані доступними у req.body. Це важливо для обробки JSON-даних у наших POST та PUT-запитах.
Налаштування маршрутів
Маршрутизація визначає, як наш застосунок реагує на запити клієнта.
app.use("/api", router); // Use the router for handling routes under the `"/api"` path
Маршрутизація визначає, як наш застосунок реагує на запити клієнта. У цьому рядку коду ми вказуємо, що router, визначений у postsRoutes.js, повинен обробляти маршрути під шляхом /api.
Мідлвар для обробки помилок
Обробка помилок є важливою для забезпечення коректної роботи застосунку у разі виникнення помилок.
// 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
});
- Цей мідлвар відповідає за перехоплення помилок, що виникають під час обробки запиту. Якщо будь-який мідлвар або обробник маршруту викликає
next(err), цей мідлвар перехопить помилку; - Він логує помилку у консоль за допомогою
console.error(err.stack); - Він відправляє клієнту відповідь з кодом 500 Internal Server Error, що вказує на помилку на сервері.
Запуск сервера
Для завершення налаштування застосунку запускається сервер Express на вказаному порту.
// Start the Express server
app.listen(PORT, () => {
console.log(`Server is running on port ${PORT}`); // Log a message indicating the server is running
});
- Цей рядок запускає сервер Express і змушує його слухати вказаний порт (
PORT); - Після запуску сервер виводить у консоль повідомлення з номером порту, на якому він працює.
Повний код файлу index.js
// 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
});
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат