Настройка ответа сервера на NodeJS


С помощью свойства statusCode мы указываем код HTTP ответа. Как правило это код 200, сообщающий браузеру о том, что все ок и страница найдена:

http.createServer((request, response) => {
response.statusCode = 200;
response.write('hello world');
response.end();
});

HTTP заголовки
С помощью метода setHeader можно отправлять HTTP заголовки. Для примера давайте отправим заголовок Content-Language:

http.createServer((request, response) => {
response.setHeader('Content-Language', 'ru');
response.statusCode = 200;
response.write('hello world');
response.end();
});

Отправка HTML
Пока, однако, браузер трактует наш ответ как обычный (plain) текст. Сделаем так, чтобы наш ответ трактовался как HTML. Для этого с помощью метода setHeader отправим соответствующий HTTP заголовок:

http.createServer((request, response) => {
response.setHeader('Content-Type', 'text/html');
response.statusCode = 200;
response.write('<b>hello world</b>');
response.end();
}).listen(3000);

Код ответа
Код ответа и заголовки можно объединить в одном методе writeHead. Первым параметром этот метод принимает код ответа, а вторым - объект с заголовками:

http.createServer((request, response) => {
response.writeHead(200, {'Content-Type': 'text/html'});
response.end();
});