Javascript 续集模型查询-为什么不';两条路线不能同时工作吗?
我在Express中玩一些路线,使用Sequelize创建我的模型。 我有两个模型,它们都独立工作。但我希望他们两个同时工作。对于有经验的人来说,可能有一个明显的原因 我的第一条路线按主键获取项目:Javascript 续集模型查询-为什么不';两条路线不能同时工作吗?,javascript,express,sequelize.js,Javascript,Express,Sequelize.js,我在Express中玩一些路线,使用Sequelize创建我的模型。 我有两个模型,它们都独立工作。但我希望他们两个同时工作。对于有经验的人来说,可能有一个明显的原因 我的第一条路线按主键获取项目: router.get('/:id', async (req, res) => { try { const categoryData = await Category.findByPk(req.params.id) .then((result) => { r
router.get('/:id', async (req, res) => {
try {
const categoryData = await Category.findByPk(req.params.id)
.then((result) => {
res.status(200).json(result);
});
} catch (err) {
res.status(500).json(err)
}
});
此查询的示例结果如下所示:
{
"id": 1,
"category_name": "Shirts"
}
我的第二条路线通过另一个参数category\u name获得结果
以下是路线:
router.get('/:category_name', async (req, res) => {
try {
const categoryData = await Category.findAll({
where: {category_name: req.params.category_name}
})
.then((result) => {
res.status(200).json(result);
});
} catch (err) {
res.status(500).json(err)
}
});
结果如下所示:
[
{
"id": 2,
"category_name": "Shorts"
}
]
但是,我一次只能使用一条路线。如果两条管线都打开,则只有一条或另一条管线工作。为什么???服务器无法区分两个可变端点路径 您有一个route/:id和另一个/:category\u名称。在测试这些路由时,您可能知道要点击哪个路由,但服务器不知道 考虑向路径添加另一个级别,例如/name/:category\u name和/id/:id