我正在构建一个简单的应用,该应用基于URI中的:date参数返回带有时间信息的JSON对象。当前,如果GET请求没有参数,则不会调用我的app.get方法。但是,我希望用户能够将空字符串传递给:date。最终,我希望用户能够输入'... / api / timestamp'并返回当前日期/时间的JSON对象。这可能吗?
app.get('/api/timestamp/:date', (req, res, next) =>{
var d = new Date(req.params.date);
if(d instanceof Date && !isNaN(d)){
let dateStr = d.toUTCString();
let dateUnix = d.getTime();
res.json({unix : dateUnix, natural : dateStr});
}
else if(req.params.date===''){
console.log("it's empty");
}
});
答案 0 :(得分:1)
是的,您可以通过附加'?'将date
设置为可选参数。
app.get('/api/timestamp/:date?', (req, res, next) =>{
....
在该函数内部,您可以检查日期是否已过。