节点快速路由器/ users /:id与/ users / login

时间:2019-05-29 07:06:24

标签: node.js rest express

我正在使用路径/ users /:id(用于查看用户信息)和/ users / login(用于使用凭据登录)构建一个宁静的api。 如何防止仅在:id是数字时才调用/ users /:id?这是构建静态API的好方法吗?

一种方法是创建/ users /:id路由,并在内部检查id是否为数字,否则在登录,注册等情况下切换。这是正确的方法吗?

2 个答案:

答案 0 :(得分:1)

  

仅根据优先级排列路线

现在user/login将不执行搜索功能

app.post('/user/login', login);
app.post('/user/signup', signup);
app.post('/user/:id', search);

答案 1 :(得分:1)

您可以使用(\\d+)表达式:

const route = Router();

router.get('user/:id(\\d+)');