Skip to main content
Практика завдань

Що таке Express.js і чому його використовують?

Що таке Express.js?

Express.js — це мінімалістичний, швидкий і непредвзятий веб-фреймворк для Node.js. Він надає тонкий шар основних функцій веб-додатків поверх вбудованого модуля http Node.js, не приховуючи жодної з основних можливостей Node.js.


Чому варто використовувати Express.js?

Без Express базовий HTTP сервер на Node.js виглядає так:

js
// Чистий Node.js — громіздкий і ручний const http = require('http'); const server = http.createServer((req, res) => { if (req.method === 'GET' && req.url === '/users') { res.writeHead(200, { 'Content-Type': 'application/json' }); res.end(JSON.stringify({ users: [] })); } else { res.writeHead(404); res.end('Не знайдено'); } }); server.listen(3000);

З Express:

js
const express = require('express'); const app = express(); app.get('/users', (req, res) => { res.json({ users: [] }); }); app.listen(3000);

Основні функції

ФункціяОпис
МаршрутизаціяВизначення обробників URL з HTTP методами
Проміжне програмне забезпеченняКомпоноване середовище запитів/відповідей
Статичні файлиОбслуговування HTML, CSS, зображень одним рядком
Шаблонні движкиГенерація HTML з EJS, Pug, Handlebars
Обробка помилокЦентралізоване управління помилками
Підтримка REST APIПарсинг JSON, коди статусу, заголовки

Привіт, світ

js
const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Привіт, Express!'); }); app.listen(3000, () => { console.log('Сервер працює на http://localhost:3000'); });

Express.js проти альтернатив

ФреймворкСтильНайкраще підходить для
Express.jsМінімалістичний, гнучкийREST API, повноцінні додатки
FastifyШвидкий, на основі схемВисокопродуктивні API
KoaСучасний, асинхроннийЛегкі ланцюги проміжного програмного забезпечення
NestJSУпереджений, TypeScriptДодатки корпоративного рівня
HapiВажкий на налаштуванняБезпечні корпоративні API

Об'єкт додатку Express

js
const express = require('express'); const app = express(); // app є екземпляром додатку Express // Основні властивості та методи: app.use() // підключити проміжне програмне забезпечення app.get() // обробити GET маршрут app.post() // обробити POST маршрут app.listen() // запустити HTTP сервер app.set() // налаштувати параметри app.locals // змінні на рівні додатку

Підсумок

Express.js спрощує веб-розробку на Node.js, надаючи маршрутизацію, проміжне програмне забезпечення та утиліти для створення HTTP серверів. Це найпопулярніший фреймворк Node.js з величезною екосистемою і є основою для таких фреймворків, як NestJS і LoopBack.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.

Дочитали статтю?
Практика завдань