Nodejs. Що таке middleware і статичні файли.

NodeJS. Що таке Middleware і статичні файли.

Відео: Express: основи та Middleware

Всім привіт! У цій статті ми розглянемо, що таке middleware і як працювати зі статичними файлами в NodeJS.

Отже, давайте для початку проведемо простий експеримент. У корені проекту створимо папку assets і туди закинемо файл styles.css з потрібними нам стилями. У файлі шаблону index.ejs, природно, підключимо файл стилів, вказавши шлях /assets/styles.css. Якщо ви тепер зайдете на наш сайт, то побачите, що стилі не підключилися. Відкривши інструменти розробника і перейшовши в розділ "мережу", ми можемо побачити, що файл styles.css прийшов з відповіддю 404 Not Found. Чому так відбувається? Вся справа в тому, що браузер запитує файл стилів у додатку. Головний файл нашого застосування, як ви пам`ятаєте, app.js. Туди і приходить запит. Оскільки для застосування цей запит такої ж, як і запит до якої-небудь сторінці, він дивиться, чи є обробник для нього. Оскільки ми ніяк не обробляємо запит на файл styles.css, на відміну від інших запитів (наприклад, / contact або / index і т.д.), то сервер нічого не повертає і, відповідно, файл не вдається знайти. Щоб цю справу виправити, ми можемо робити купу запитів на потрібні картинки або файли, але, як ви розумієте, це далеко не найкращий шлях. Нам потрібно просте і зручне рішення для даного завдання, і воно є - це Middleware. Давайте розберемося, що таке middleware.




Middleware - це прошарок між нашим запитом і відповіддю. Наприклад, ми звертаємося до сторінки / contact - це запит, потім ми отрісовиваємих її - це відповідь, а ось функція, в якій ми можемо написати будь-якій код і в якій ми якраз і промальовується нашу сторінку - це middleware.




Для вирішення нашої задачі ми будемо використовувати можливості Express:

// файл app.js, код помістити після app.set ( `view engine`, `ejs`) -
app
.use(`/ Assets`, express.static(`Assets`)) -

Тут ми використовуємо метод use (), в який першим параметром передаємо запит, отримавши який буде запускатися другий параметр, де ми використовуємо метод static () для отримання шляху до статичних файлів, таких, як файл стилів. Тобто як тільки в адресному рядку з`явиться / assets або цей шлях буде десь вказано, наприклад, у файлі шаблону, як у нас, то ці файли будуть шукатися в нашій папці / assets.

Відео: Анатомія Express сервера: Request, Response, Middleware, Routing

А на сьогодні це все. Дякую за увагу!

Поділися в соціальних мережах:

Схожі
Nodejs. Що таке query strings.Nodejs. Що таке query strings.
Gulp. Вступ.Gulp. Вступ.
Nodejs. Template engine. Частина 1.Nodejs. Template engine. Частина 1.
Вивчаємо sass. Встановлення та налаштування.Вивчаємо sass. Встановлення та налаштування.
Nodejs. Модулі.Nodejs. Модулі.
Як працювати зі стилями в jаvascript.Як працювати зі стилями в jаvascript.
Nodejs. Як обробляти post запити.Nodejs. Як обробляти post запити.
Nodejs. Починаємо роботу з express.Nodejs. Починаємо роботу з express.
Nodejs. Потоковий висновок html сторінки.Nodejs. Потоковий висновок html сторінки.
Nodejs. Шаблони модулів.Nodejs. Шаблони модулів.
» » Nodejs. Що таке middleware і статичні файли.