ExpressJs路由:找不到'_开始时间';请求对象中的属性
我需要检查请求发送到服务器的时间。为此,我研究了'req'对象。它有一个属性“\u startTime”,它给我发送请求的客户机的系统时间ExpressJs路由:找不到'_开始时间';请求对象中的属性,express,routing,Express,Routing,我需要检查请求发送到服务器的时间。为此,我研究了'req'对象。它有一个属性“\u startTime”,它给我发送请求的客户机的系统时间 我找不到此属性的正式文档。从我所看到的,不是请求对象上的Express set logger modulemorgan添加了它,但按照惯例,名称以下划线开头的属性是“私有的”:它们仅供内部使用,不应依赖 然而,自己添加这样的属性并不困难。在Express中,最合乎逻辑的方法是使用中间件功能: app.use((req, res, next) => {
我找不到此属性的正式文档。从我所看到的,不是请求对象上的Express set logger module
morgan
添加了它,但按照惯例,名称以下划线开头的属性是“私有的”:它们仅供内部使用,不应依赖
然而,自己添加这样的属性并不困难。在Express中,最合乎逻辑的方法是使用中间件功能:
app.use((req, res, next) => {
req._requestStarted = new Date();
next();
});
因为设置此属性的是您自己的应用程序代码,所以您可以始终依赖现有的应用程序代码(而不是\u startTime
,因为它是供morgan
内部使用的,所以将来可能会被删除或重命名)
吹毛求疵:此值不反映发送请求的客户端的系统时间,而是服务器上接收请求的时间。在HTTP中,客户端通常不随请求发送自己的本地时间