节点/表达:从URL获取req.query值并将其转换为UNIX时间戳

时间:2019-03-05 22:27:55

标签: node.js express url timestamp unix-timestamp

我有以下网址:

https://electric-stoat.glitch.me/api/timestamp/:date_string?2015-12-25

在我的Express app.get函数中,我想获取2015-12-25并返回如下所示的JSON:

{unix: < The UNIX timestamp for 2015-12-15 in milliseconds >, utc: < The UTC timestamp for 2015-12-15 >} 

我如何从2015-12-15中获取req.query并将其转换为UNIX时间戳和UTC时间戳?到目前为止,这是我所拥有的,请忽略if语句的第一部分。在其他情况下,我希望将req.query转换为UNIX / UTC时间戳。

app.get("/api/timestamp/:date_string?", function (req, res, date) {
  // If query params are empty use the current date
  if(Object.keys(req.query).length === 0) {
    date = Date.now();
    console.log("Date.now outputs : " + date);
    var dateUTC = new Date().toUTCString();

    res.json({ 
      unix: date,
      utc: dateUTC
    });
  }
  // If query params are provided use date provided by req.query
  else {
    res.json({
      unix: req.query,
      utc: req.query
    })
  }

1 个答案:

答案 0 :(得分:1)

req.params包含路由参数(在URL的路径部分中),而req.query包含URL查询参数(在URL中的?之后)。

您还可以使用req.param(name)在两个位置(以及req.body)中查找参数,但是现在不赞成使用此方法。