«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Express.js: главное

Express.js: главное

Опубликовано 7 ноября 2024 г.
Просматривать:657

Express.js Essentials

Эта статья посвящена важным вещам, которые необходимо знать о Express.js, ключевой части создания серверных приложений с помощью Node.js. Я углублюсь в маршрутизацию, операции CRUD, методы ответа и функции промежуточного программного обеспечения, которые играют решающую роль в создании надежных веб-приложений.

Основные моменты концепции:

  1. Методы маршрутизации и CRUD
  2. Параметры маршрутизации
  3. Обработчики маршрутов
  4. Методы ответа
  5. Встроенные функции промежуточного программного обеспечения

1. Методы маршрутизации и CRUD

В Express.js методы маршрута определяют, как ваше приложение отвечает на различные HTTP-запросы (например, GET, POST, PUT, DELETE) для определенных маршрутов. Эти методы используются для реализации операций CRUD (создание, чтение, обновление, удаление) в вашем приложении.

Базовый пример CRUD: В этом примере каждый маршрут отвечает на другую операцию CRUD в зависимости от используемого метода HTTP.

const express = require('express'); 
const app = express(); 

// Create - POST
app.post('/users', (req, res) => {
  res.send('User created');
}); 

// Read - GET
app.get('/users', (req, res) => {
  res.send('Here is the user'); 
}); 

// Update - PUT
app.put('/users/:id', (req, res) => {
  res.send('User with ID ${req.params.id} updated'); 
});

// Delete - DELETE
app.delete('/users//:id', (req, res) => {
  res.send('User with ID ${req.params.id} deleted');
}):

app.listen(3000, () => 
  console.log('Server running on port 3000')
);

2. Параметры маршрутизации

Параметры маршрутизации позволяют захватывать определенные части URL-адреса запроса и использовать их в обработчиках маршрутов. Например, вы можете извлечь идентификатор из URL-адреса и использовать его для выполнения действия, связанного с этим идентификатором.

например) В этом примере :id — это динамический параметр, который будет извлечен и использован в ответе. Если этот динамический параметр равен 123, запрос к /users/123 вернет «Извлечение пользователя с идентификатором: 123».

app.get('/users/:id', (req, res) => {
  const userId = req.params.id; 
  res.send(`Fetching user with ID: ${userId}`);
});

3. Обработчики маршрутов

Обработчики маршрутов определяют, как ваш сервер обрабатывает HTTP-запросы. Вы можете определить несколько функций промежуточного программного обеспечения в рамках одного маршрута, что обеспечивает более чистый и модульный код.

Пример с несколькими обработчиками: В этом примере первое промежуточное программное обеспечение регистрирует сообщение, а второе промежуточное программное обеспечение отправляет ответ.

app.get('/users', (req, res, next) => {
  console.log('First middleware');
  next(); // call the next handler in the stack
}, (req, res) => {
  res.send('User list'); 
});

4. Методы реагирования

Express.js предоставляет несколько методов для отправки ответов клиенту. Давайте рассмотрим некоторые часто используемые методы ответа.

a) .json() отправляет ответ в формате JSON.

app.get('/data', (req, res) => {
  res.json({ message: 'Hello, JSON' });
});

b) .send() отправляет ответ различных типов (текст, HTML, буфер и т. д.).

app.get('/text', (req, res) => {
  res.send('Sending text');
});

c) .download() отправляет файл в виде вложения, предлагая пользователю загрузить его.


app.get('/download', (re




Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/ryoichihomma/expressjs-essentials-5e83?1. Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3