statusMessage не определено в "res" - Node Express - PullRequest
0 голосов
/ 21 сентября 2018

Я работаю с Node.js & Express.js, и мне нужен маршрут для отображения статуса приложения.

router.get('/status', function(req, res) {
   res.send("status " + res.statusCode + " : " + res.statusMessage);
});

Когда я регистрирую res, одновременно statusCode и statusMessage являются null.

Результат имеет статус 200: undefined

Я что-то не так делаю?

Ответы [ 2 ]

0 голосов
/ 21 сентября 2018

Вы не делаете ничего плохого.Посмотрите здесь исходный код ServerResponse .

Как видите, statusCode и statusMessage инициализируются (строка) как:

ServerResponse.prototype.statusCode = 200;
ServerResponse.prototype.statusMessage = undefined;

И так какВы не изменяете ни один из них, они установлены по умолчанию.

0 голосов
/ 21 сентября 2018

Когда я регистрирую res, и statusCode, и statusMessage имеют значение null.

Посмотрите на ваш вывод:

status 200 :undefined

statusCode это не null, это 200.

statusMessage тоже не null, это undefined.Это ожидается.Посмотрите на документацию для него :

Если это значение не определено, будет использовано стандартное сообщение для кода состояния.

сообщение по умолчанию не будет добавлено до тех пор, пока объект не покинет ваш контроль.Насколько я знаю, нет никакого способа узнать, какое сообщение он получит, кроме как вывести его из кода состояния.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...