在Node.js中访问HTTP请求的时间戳

Mor*_*mul 8 timestamp request node.js express

有没有办法访问HTTP请求发送到Node.js服务器的时间戳?

就像是:

app.post('', function (req, res) {
    console.log(req.date);   //or
    console.log(req.timestamp);
}
Run Code Online (Sandbox Code Playgroud)

我尝试了几件事并已将整个req对象打印到控制台,但没有找到时间戳属性.我是否必须手动发送时间戳?我认为它已经是HTTP请求的一部分.

yea*_*ght -6

请求标头中有Date可用于检索时间戳。

如果您使用的是 Express-4.x,您可以使用req.get(headerName)来获取它。

如果您使用的是 Node http 模块,请尝试执行console.dir(req.headers). 如果可用,您可以从以下位置获取 req.headers["Date"]

只要您的时间戳是从客户端通过网络发送的,这一切都是有效的。还要检查请求(比如说 Chrome 开发工具网络)并检查发送的所有标头。