Запуск сервера на NodeJS

В этой статье рассмотрен способ организации веб сервера на NodeJS. Для этого используется необходимо использовать модуль "http". В этот модуль входит метод "createServer", который позволяет возвращать различную информацию в ответах. Через него можно задать как заголовки ответа, так и содержание страницы.

Первое что получает пользователь при открытии страницы сайта - это "заголовки" от сервера. В них содержится техническая информация о запрашиваемой странице, о типе её содержания, о размере и других параметрах, включая информацию о статусе ответа сервера. Заголовки можно установить методами "statusCode" и "setHeader". А содержимое страницы задаётся с помощью метода "write".

Попробуем привести простейший пример и разобраться со всем по порядку:
let http = require('http');
http.createServer(function(request, response) {
   response.statusCode = 200;
   response.setHeader('Content-Type' : 'text/html');
   response.write('Тише, <b>мыши</b>, кот на крыше');
   response.end();
}).listen(80);
В параметре метода "createServer" записывается функция с двумя аргументами - принимаемыми от пользователя к серверу (request) и передаваемыми от сервера к пользователю (responce) данными. Эта функция выполняется для каждого пользователя отдельно. То есть каждый посетитель сайта при запросе получит свой результат работы этой функции.
Учтите, что если внутри функции в параметре "createServer" использовались переменные, которые определялись вне неё, то их значение будет у всех пользователей одинаковым. То есть если один изменит его, то все остальные тоже увидят изменённое значение.
В этом примере NodeJS ожидает запроса через TCP порт номер 80 (в конце примера можно увидеть "listen(80)"). А в ответе сервера с помощью метода "setHeader" должен быть отправлен заголовок 'Content-Type' : 'text/html' и с помощью метода "write" содержание страницы равное "Тише, мыши, кот на крыше". Метод "statusCode" добавляет заголовок с числовым кодом ответа сервера (200 - всё в порядке, 404 - нет такой страницы). Проверим работу этого примера.

Для проверки необходимо запустить этот скрипт в консоли сервера. Делается это обычным способом (пишется "node" и относительный/абсолютный путь к файлу, который нужно запустить):
node script.js
После запуска ничего не будет выведено в консоль, но скрипт не будет остановлен. Скрипт войдёт в метод "createServer" и начнёт бесконечное выполнение (пока администратор сервера сам его не прервёт через Ctrl+C). Во время выполнения этого бесконечного цикла обратиться к серверу через браузер, к нужному 80-ому порту (это стандартный порт для сайтов без SSL шифрования). Вернётся страница с содержанием "Тише, мыши, кот на крыше".
MouseDC.ru - хостинг, виртуальный хостинг, покупка доменов, проверка доменов, WHOIS, курсы создания сайтов, вебинары по созданию, курсы разработки сайтов, доработка сайтов, сопровождение сайтов, разработка сайтов, техподдержка сайтов
Cмотрите другие статьи:
Была ли статья полезной?
Была ли эта статья полезна? Есть вопрос?
хостинг для сайтов
Закажите недорогой хостинг Заказать

всего от 290 руб