Создание HTTP сервера на NodeJS
Давайте теперь развернем HTTP сервер на NodeJS . Этот сервер будет принимать запросы от браузера и отдавать в ответ HTML код страниц.
Для начала нам нужно импортировать модуль http:
import http from 'http';
После этого мы можем стартовать наш сервер с помощью метода createServer:
http.createServer();
Этот метод параметром принимает коллбэк. Этот коллбэк будет выполнятся каждый раз, когда кто-то через браузер обращается к нашему сайту:
http.createServer(() => {
});
В нашем коллбэке мы должны определить два параметра. В первый параметр попадет объект с данными запроса пользователя, а во второй параметр - объект, с помощью которого мы сфомируем наш ответ, отправляемый в браузер:
http.createServer((request, response) => {
});
С помощью метода write мы можем говорить, какой текст отправить в браузер:
http.createServer((request, response) => {
response.write('text1');
response.write('text2');
response.write('text3');
response.end();
});
С помощью метода end мы командуем завершить наш ответ и отправить его в браузер:
http.createServer((request, response) => {
response.write('text1');
response.write('text2');
response.write('text3');
response.end();
});
После запуска сервера мы должны сказать, на каком порте наш сервер будет ожидать запросы от браузера. Это делается с помощью метода listen. Давайте укажем традиционный порт 3000:
http.createServer((request, response) => {
response.write('text1');
response.write('text2');
response.write('text3');
response.end();
}).listen(3000);
Теперь мы можем обратиться к нашему серверу через браузер, набрав http://localhost:3000, где после двоеточия указан заданный нами порт.
Остановка сервера
В предыдущих уроках наши скрипты отрабатывали сразу и после этого консоль была готова к вводу новых команд. С сервером это будет не так, так как он представляет собой некоторый исполняемый процесс.
Чтобы завершить такой процесс, вам нужно в терминале нажать клавиши Ctrl + C. В этом случае сервер остановится и затем его можно будет запустить опять.