微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

你如何将东西传递给路由器? 代码

如何解决你如何将东西传递给路由器? 代码

我一直在研究端点,但我希望它像 bot/:id/Vote

一样工作

我如何将 ID 传递到该路由器,使其类似于 https://example.com/bot/512333785338216465/Vote

代码

const Vote = require("../routers/voting");
app.use("/bot/:id/Vote",Vote);

解决方法

创建新的路由器对象时需要使用 mergeParams(default: false) 选项。

保留来自父路由器的 req.params 值。如果父级和子级的参数名称冲突,则子级的值优先。

所以工作代码是:

const express = require('express');
const app = express();
const { Router } = express;

const vote = Router({ mergeParams: true });
vote.get('/',(req,res) => {
  console.log(req.params); //=> { id: '512333785338216465' }
  res.sendStatus(200);
});

app.use('/bot/:id/vote',vote);

app.listen(3000,() => console.log('Server started at http://localhost:3000'));

软件包版本:"express": "^4.17.1",

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。