ExpressJS - 推荐的路线定义方式

时间:2014-01-24 10:34:46

标签: node.js express routes

我被困在一种愚蠢的事情上。用户可以选择两种可能的选项(操作)。在这种情况下,如何定义路线或建议的定义方式是什么?

路径:

.com/email/register
.com/email/verify

变体1 :保持每条路线在新线上分开

app.VERB("/email/register", SomeObject.register);
app.VERB("/email/verify", SomeObject.verify);

变体2 :将所有选项保留在一个区块中(回调)

app.VERB("/email/:action", function(req, res) {
    var action = req.params.action;

    if (action === "register" || action === "verify") {
        SomeObject[action](req, res);
    }
    else {
        res.send(404);
    }
});

1 个答案:

答案 0 :(得分:1)

这实际上取决于您的使用案例,但如果您只有两个选项我会推荐第一个版本,

app.VERB("/email/register", register_handler)
app.VERB("/email/verify", verify_handler)

如果您有大量可能的操作并且它们共享类似的处理代码,则第二种方法很有用;例如,您将通过前端调用的自定义API。