有必要使用node express检查url中的params吗?

时间:2018-03-31 09:41:00

标签: node.js rest security express

我有一些休息端点,如下所示:

router.get('/groups/leave/:hash', (req, res) => {
    if (!req.params.hash) {
        return res.send({ res: false, code: responseCode.PARAMS_MISS })
    }
    console.log(req.params.hash)
})

用户可以localhost:8080/groups/leave/somecode,当使用转到localhost:8080/groups/leave/时,他得到404 - 页面不存在。

所以我的问题是,为了检查是否未定义,有必要(出于安全原因 - 哈希值可以未定义)?

1 个答案:

答案 0 :(得分:0)

您可以为此定义两个端点(localhost:8080 / groups / leave /),另一个端点(localhost:8080 / groups / leave /:hash)或检查是否有params重定向到params页面和如果不给消息参数没有定义或重定向到params不r的页面。这样如果没有params它将重定向到第一个如果有params它将重定向到hash一个。并且你的问题是的它是更好的检查..你应该遵循代码标准。这是一个很好的做法。