01:08
Урок 34: Основы Express.js

Курс по программированию на JavaScript

Урок 34: Основы Express.js

Express.js — это минималистичный и гибкий веб-фреймворк для Node.js, который предоставляет широкий набор функций для создания веб-приложений и API. В этом уроке мы рассмотрим, как установить и настроить Express.js, а также как создать простой сервер.

Установка и настройка Express.js

Перед началом работы с Express.js необходимо установить Node.js и NPM (Node Package Manager). Если они у вас уже установлены, вы можете перейти к установке Express.js. Выполните следующую команду в терминале или командной строке для установки Express.js:

npm install express
+ express@4.17.1
added 50 packages from 37 contributors and audited 126 packages in 2.567s

Создание простого сервера

После установки Express.js можно создать простой сервер. Создайте файл server.js и добавьте следующий код:

// Импорт пакета express
const express = require('express');

// Создание приложения express
const app = express();

// Обработка запроса к корневому маршруту
app.get('/', (req, res) => {
 res.send('Hello, Express!');
});

// Запуск сервера
const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
 console.log(`Server is running on port ${PORT}`);
});
// Server is running on port 3000

В этом примере мы создаем сервер с помощью Express.js, который обрабатывает запросы к корневому маршруту и отвечает текстом "Hello, Express!". Сервер запускается на порту 3000 или на порту, указанном в переменной окружения PORT.

Обработка маршрутов

Express.js позволяет легко обрабатывать различные маршруты (URL). Рассмотрим пример обработки нескольких маршрутов:

// Обработка маршрутов
app.get('/about', (req, res) => {
 res.send('About Page');
});

app.get('/contact', (req, res) => {
 res.send('Contact Page');
});
// About Page
// Contact Page

В этом примере сервер обрабатывает запросы к маршрутам /about и /contact, отвечая соответствующими сообщениями.

Использование middleware

Middleware — это функции, которые выполняются во время обработки запроса. Они могут изменять объект запроса и ответа, завершать запрос или передавать управление следующей функции middleware. Рассмотрим пример использования middleware для логирования запросов:

// Логирование запросов
app.use((req, res, next) => {
 console.log(`${req.method} ${req.url}`);
 next(); // Передача управления следующей функции middleware
});
// GET /
// GET /about
// GET /contact

В этом примере middleware функция логирует метод и URL каждого запроса и передает управление следующей функции middleware с помощью next().

Упражнения

Упражнение 1: Создание простого сервера с несколькими маршрутами

Создайте сервер с помощью Express.js, который обрабатывает следующие маршруты: / (отвечает "Home Page"), /about (отвечает "About Page") и /services (отвечает "Services Page"). Запустите сервер и проверьте работу каждого маршрута.

Решение:

// Импорт пакета express
const express = require('express');

// Создание приложения express
const app = express();

// Обработка маршрутов
app.get('/', (req, res) => {
 res.send('Home Page');
});

app.get('/about', (req, res) => {
 res.send('About Page');
});

app.get('/services', (req, res) => {
 res.send('Services Page');
});

// Запуск сервера
const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
 console.log(`Server is running on port ${PORT}`);
});
// Server is running on port 3000

Объяснение: Мы создали сервер, который обрабатывает запросы к маршрутам /, /about и /services, и отвечает соответствующими сообщениями.

Упражнение 2: Использование middleware для логирования запросов

Создайте сервер с помощью Express.js и добавьте middleware функцию для логирования метода и URL каждого запроса. Создайте маршруты /home и /contact, отвечающие сообщениями "Home Page" и "Contact Page" соответственно. Запустите сервер и проверьте работу каждого маршрута, убедившись, что запросы логируются в консоль.

Решение:

// Импорт пакета express
const express = require('express');

// Создание приложения express
const app = express();

// Middleware для логирования запросов
app.use((req, res, next) => {
 console.log(`${req.method} ${req.url}`);
 next(); // Передача управления следующей функции middleware
});

// Обработка маршрутов
app.get('/home', (req, res) => {
 res.send('Home Page');
});

app.get('/contact', (req, res) => {
 res.send('Contact Page');
});

// Запуск сервера
const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
 console.log(`Server is running on port ${PORT}`);
});
// Server is running on port 3000

Объяснение: Мы создали сервер, добавили middleware функцию для логирования запросов и создали маршруты /home и /contact. Запустив сервер, мы можем увидеть логи запросов в консоли и проверить работу маршрутов.

Категория: JavaScript | Просмотров: 81 | Добавил: Admin | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: