node.js - 如何为数据库查询的多个可选参数创建一个快速端点?
问题描述
我被困在 Express 中的路由。我想为多个可选请求参数创建一条路由,以根据客户端给定的参数从数据库中获取记录。
我正在使用这个:
“/search/:firstName?/:lastName?/:department?/:designation?”
上面 url 中的问题是:如果用户只想按部门搜索,那么部门将与 firstName 映射
解决方案
一个更好的方法是使用查询参数。因此,如果用户只想按部门搜索,示例请求 url 将如下所示:
/search?department=education
多个参数将用 . 分隔&
。例如:
/search?department=education&firstName=john
您可以像这样快速访问此信息:
// ...
router.get('search', function(req, response){
var department = req.query.department;
var firstName = req.query.firstName;
// ...
})
推荐阅读
- android - java.lang.IllegalStateException:无法构建唯一文件:/storage/emulated/0/Pictures Title image/jpeg Android 10(Samsung note 10+)
- scala - 将读取文件的架构存储到 spark scala 中的 csv 文件中
- python-3.x - 在 Python 3.8 中尝试对图像进行 blit 时遇到语法错误
- git - 在 github 上创建新仓库的方式?
- react-native - 排毒测试:SyntaxError:const 声明中缺少初始化程序
- c# - 如何在 C# 中隐藏邮件附件中的内联图像
- c# - 我无法通过浏览器访问我的应用程序视图
- flutter - 我怎么能去第一个有结果的屏幕呢?
- r - 在不拆分数据的情况下,如何使用 R 中的函数创建新的分类变量
- excel - 从不同的工作簿复制数据并将其粘贴到报表工作簿上的特定工作表