GET变量名称包含破折号为NodeJS Express的req.query创建问题?

时间:2014-03-30 06:02:36

标签: javascript node.js express

我正在创建一个GET端点,使用Express:

在Node.js中处理这个变量
?message-timestamp=2012-08-19+20%3A38%3A23

我无法使用req.query访问它。访问req.query.message-timestamp会引发错误(“ReferenceError:timestamp is not defined”)。显然,破折号并不好看。

有什么明显的方法吗?

1 个答案:

答案 0 :(得分:7)

在javascript中,可以使用.[]来访问对象值 当密钥包含短划线时,您无法使用.表示法,因为-将被解释为"减去"。这与express无关,它只是javascript的工作方式。

所以你应该使用:

req.query["message-timestamp"]