我被困在一种愚蠢的事情上。用户可以选择两种可能的选项(操作)。在这种情况下,如何定义路线或建议的定义方式是什么?
路径:
.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);
}
});
答案 0 :(得分:1)
这实际上取决于您的使用案例,但如果您只有两个选项我会推荐第一个版本,
app.VERB("/email/register", register_handler)
app.VERB("/email/verify", verify_handler)
如果您有大量可能的操作并且它们共享类似的处理代码,则第二种方法很有用;例如,您将通过前端调用的自定义API。