Сегодня я расскажу о создании веб-сервера с помощью NodeJs.

Что такое Нодейс?

По сути, Nodejs — это рабочая среда js, которая работает асинхронно, в отличие от js.

Сегодня я создам веб-сервер и буду регистрировать ответы на файл JSON. Я буду использовать модуль HTTP для создания веб-сервера и модуль fs для регистрации ответов на файл. HTTP и fs являются основными модулями NodeJ, поэтому вам не нужно устанавливать какие-либо сторонние зависимости.

Что такое веб-сервер?

Веб-сервер включает в себя несколько частей, которые контролируют доступ веб-пользователей к размещенным файлам. HTTP-сервер — это программное обеспечение, которое понимает URL-адреса (веб-адреса) и HTTP (протокол, который ваш браузер использует для просмотра веб-страниц). Доступ к HTTP-серверу можно получить через доменные имена веб-сайтов, которые он хранит, и он доставляет содержимое этих размещенных веб-сайтов на устройство конечного пользователя.

Что такое HTTP-запрос?

Клиент делает HTTP-запрос к именованному хосту, расположенному на сервере. Целью запроса является доступ к ресурсу на сервере.

Чтобы сделать запрос, клиент использует компоненты URL-адреса (унифицированный указатель ресурса), который включает информацию, необходимую для доступа к ресурсу.

Получив базовую информацию о веб-серверах и HTTP-запросах, давайте приступим к написанию кода.

Мы импортируем наш модуль HTTP и создаем наш сервер с помощью метода createServer. Наш метод createServer принимает два параметра: запрос и ответ. Мы можем получить запрошенный URL-адрес с помощью request.url. После этого мы можем создать блок case case или оператор if-else для наших запрошенных URL-адресов и создать ответ на эти запросы.

Мы можем получить текущее время с кодами ниже

Затем мы можем добавить модуль fs для регистрации запросов в наш файл JSON. Для этого мы можем использовать разные методы. fs.appendFile создаст новый файл, если он не был создан ранее, и добавит к нему наши журналы, но fs.writeFile создаст новый файл, если он не был создан ранее, и выполнит этот процесс для каждого запроса по умолчанию, поэтому наши старые журналы будут быть удалены. Мы можем использовать опцию {flag: «a»} для решения этой проблемы.

Я также использовал объект даты js для достижения текущего времени, когда запрос выполнен. Создал файл JSON и вставил в него URL-адрес запроса, статус и текущее время.

Вы также можете использовать различные пакеты для сохранения журналов, например Winston, Bunyan, Pino, Morgan, Node-loggly.

Вы можете запустить этот сервер с помощью команды «node server».

Есть много способов создать веб-сервер с NodeJs. Вы можете использовать expressJs для создания веб-сервера и пакета моментов для получения текущего времени. Эти пакеты упростят процесс, но сегодня мы попытались использовать основные модули. Надеюсь, вам понравилось. Увидимся в следующей статье…