Node.js поддерживает разработку серверной части из коробки с помощью модуля http. Express является оберткой этого самого модуля. Он предоставляет более удобный и мощный интерфейс управления.
Несмотря на то, что Express очень популярный, он достаточно медленный относительно своих аналогов. Если Вам критична производительность, то рекомендую посмотреть в сторону fastify.
Установка
Для того чтобы установить express, необходимо открыть терминал в директории с проектом. Самый простой, на мой взгляд, способ - это ввести в пути директории команду "cmd".
После того как терминал открылся необходимо написать команду "npm i express".
- npm - пакетный менеджер
- i - сокращение от install
- express - название устанавливаемого пакета
Создание приложения
Когда загрузка завершится, создаем главный файл нашего проекта. Назовем его index.js.
Открываем созданный файл с помощью удобного для Вас редактора. Я использую Visual Studio code.
Далее выложенный код будет предполагать, что Вы знаете что такое POST и GET запрос, а также ES6.
Теперь давайте определимся, что мы вообще будем писать. Для примера я решил написать сервер, складывающий значение, которое передал пользователь, с глобальным значением на сервере.
Я постарался прокомментировать каждую строчку кода, чтобы не возникало вопросов. Чтобы запустить сервер, необходимо прописать в терминале "node index".
Теперь можно испытать наш сайт. Переходим по адресу localhost:3000/get/2. Должно появится сообщение о том, что глобальное значение равно 2. Если мы обновим страницу, то значение, соответственно, увеличится. Таким образом, мы отправляем данные в формате string.
Но отправлять данные в формате string неудобно. Поэтому давайте отправим html файл. Для этого создаем новый файл под названием "index.html". В него запишем информацию по Вашему желанию.
Теперь давайте дополним наш index.js. Добавим новый модуль path. И новый маршрут.
Перезапускаем сервер и переходим по адресу localhost:3000. Там должна содержаться информация из файла index.html.
Итог
Из этой статьи Вы узнали:
1. Как создать собственное приложение на express;
2. Что такое динамический маршрут;
3. Как обрабатывать параметры запроса;
4. Как отправлять файлы.