我正在使用Node.js和Express.js,我需要一条路线来显示应用程序的状态。
router.get('/status', function(req, res) {
res.send("status " + res.statusCode + " : " + res.statusMessage);
});
当我登录res
时,statusCode
和statusMessage
均为null
。
结果为状态200:undefined
我做错什么了吗?
答案 0 :(得分:1)
当我登录res时,statusCode和statusMessage都为空。
查看您的输出:
状态 200 :未定义
statusCode
不是null
,而是200
。
statusMessage
也不是null
,而是undefined
。这是预期的。查看documentation for it:
如果未定义,则将使用状态码的标准消息。
在对象离开控件之前,不会添加默认消息。据我所知,除了从状态码中推断出消息外,没有其他方法可以找到消息。
答案 1 :(得分:1)
您没有做错任何事情。看看ServerResponse
here.
如您所见,statusCode和statusMessage被初始化(行)为:
ServerResponse.prototype.statusCode = 200;
ServerResponse.prototype.statusMessage = undefined;
并且由于您没有修改它们中的任何一个,因此将它们设置为默认值。