end video

Този урок е достъпен само в платената версия на курса.

Вземи достъп до всички уроци 💫 цена: 99лв.

Ако вече имаш регистриран профил натисни тук.

§ Как да сервираме статични ресурси с Node.js

Тук ще видим как може да сервираме ресурси като отговор на заявки към нашия сървър.

Подобно на предния урок, и тук ще използваме модула http. След това, можем да създадем нов файл, като например server.js, и да добавим следния код:

const http = require('http');
const fs = require('fs');

http.createServer(function (request, response) {
  fs.readFile('image.jpg', function(err, data) {
    response.writeHead(200, {'Content-Type': 'image/jpeg'});
    response.end(data);
  });
}).listen(8080);

При заявка към нашия сървър функцият, която приема request-a прочита файлa image.jpg и го сервира обратно към клиента. Тук важен момент е отново Content-Type header-a.

Много често обаче ние искаме да сервираме статични ресурски от цяла една директория. Изричното посочване на всеки от файловете няма да работи в този случай. Вариант е отново да използваме express библиотеката, където тази функционалност е свързана с извикването на едноа единствена функция.

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

app.use(express.static('public'));

app.listen(8080, function () {
  console.log('Example app listening on port 8080!');
});

.static('public') превръща директорията public в място където може да поставим нашите статични ресурси. Те ще бъдат сервирани с правилния Content-Type автоматично от express библиотеката.

questionnaire
discussion

Материали

Материали свързани с урока:
Файлове към урока
Express static функция

Материали

Следва: Обработка на данни(11:31)

Към урока →