Создать веб-сервер (express)

Шаг 1: Установка

Express — фреймворк для создания веб-сервера.

Сначала надо установить два модуля — express (запускает веб-сервер) и express-generator (генерирует шаблон сайта).

npm install express
npm install express-generator -g

После установки модулей, надо запустить команду express, которая сгенерирует файлы шаблона сайта.

express --view=ejs site_folder

Параметр --view указывает, какой шаблонный движок надо использовать.

В итоге появится папка «site_folder», в которой будут содержаться файлы сайта. Если не указать папку сайта, то файлы сгенерируются в текущей директории.

Затем надо перейти в папку «site_folder» и запустить команду ниже, которая установит нужные библиотеки.

npm install

Шаг 2: Создание страниц

Пример создания страниц.

// app.js

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

// установка папки и движка шаблона
app.set('views', 'views');
app.set('view engine', 'ejs');

// открывать по URL «/about» файл «views/about.ejs»
app.get('/about', function(req, res){
    res.render('about');
});

// открывать указанный URL с переданными параметрами
app.get('/services', function(req, res){
    res.render("services", {category_id: '4'});
});

// Запуск веб-сервера
app.listen(3000, function(){
    console.log('Сервер запущен');
});

Статика (картинки, css, js) указывается через метод express.static().

// статика в папке "public" (картинки, css, js)
app.use(express.static(path.join(__dirname, 'public')));

Теперь в папке «public» можно загружать картинки, стили, скрипты. Файл «public/css/styles.css» будет доступен через браузер «/css/styles.css».

Шаблоны страниц находятся в папке «views» (указаны в параметре app.set('views')). Файлы шаблонов имеют расширение «ejs».

<!-- views/services.ejs -->

<p>Контент для категории <%= category_id %></p>

Чтобы открыть страницы через браузер, сначала надо запустить веб-сервер через команду ниже:

node app.js

После запуска команды, страницы Node.js-сервера можно будет открыть через URL «localhost:3000».