Node + Express动态路由

问题描述 投票:-1回答:1

我创建了一个多网络应用程序,即我的客户拥有自己的一组用户。

这是一个学校的应用程序。我为所有学校使用相同的数据库,以便于维护。

我的路线会是这样的

/ API /一些学校代码/用户

/ API /其他一些学校代码/用户

/ API /其他一些学校代码/用户

我的问题是,这里的学校代码是动态的或用户特定的。我需要使用过滤数据库中的数据。

所以我的每个端点应该是/ API /:schoolcode / users的形式,并通过req.params.schoolcode获取学校代码

这里的问题是我需要在每个开始路径中添加:schoolcode。或任何中间件方法

有没有其他方法。更好的解决方案

node.js express software-design
1个回答
1
投票

您可以在主节点文件中对代码进行分段并调用路由处理程序

app.use('/api/:schoolcode([0-9]+)', schoolRouter)

我添加了一些正则表达式,它允许验证您的路径只是数字,但您可以根据需要进行更改。你的学校路由器可能是这样的:

 app.route('/users')
   .get((req, res) => {/** do something
 **/})
   .post((req, res) => { /* do something */})
© www.soinside.com 2019 - 2024. All rights reserved.