nodejs中express如何获取路由的参数?
封面图
•
2026-01-16
•
nodejs
327
0
0
0
在 Node.js 中使用 Express 框架时,可以通过以下几种方式获取路由的参数: --- ## 一、路径参数(Route Parameters) ### 示例: ```js app.get('/user/:id', (req, res) => { const userId = req.params.id; res.send(`User ID: ${userId}`); }); ``` - **URL 示例**:`/user/123` - **获取方式**:通过 `req.params` 对象获取,如 `req.params.id` --- ## 二、查询参数(Query Parameters) ### 示例: ```js app.get('/search', (req, res) => { const query = req.query.q; res.send(`Search query: ${query}`); }); ``` - **URL 示例**:`/search?q=hello` - **获取方式**:通过 `req.query` 对象获取,如 `req.query.q` --- ## 三、请求体参数(Body Parameters) - POST 请求 需要使用中间件 `express.json()` 或 `express.urlencoded()` 来解析请求体。 ### 示例: ```js app.use(express.json()); app.post('/login', (req, res) => { const username = req.body.username; const password = req.body.password; res.send(`Username: ${username}, Password: ${password}`); }); ``` - **发送数据示例**(JSON 格式): ```json { "username": "admin", "password": "123456" } ``` --- ## 四、混合使用(路径 + 查询 + body) 你可以同时使用以上三种方式,例如: ```js app.get('/user/:id', (req, res) => { const userId = req.params.id; // 路径参数 const search = req.query.search; // 查询参数 res.send(`User ID: ${userId}, Search: ${search}`); }); ``` --- ## 五、获取所有参数(`req.params`, `req.query`, `req.body`) | 参数类型 | 获取方式 | 说明 | |----------|----------|------| | 路径参数 | `req.params` | 如 `/user/:id` 中的 `id` | | 查询参数 | `req.query` | 如 `/search?q=hello` 中的 `q` | | 请求体参数 | `req.body` | 需要使用 `express.json()` 或 `express.urlencoded()` 解析 | --- ## 总结 | 场景 | 方法 | |------|------| | 路径参数 | `req.params.key` | | 查询参数 | `req.query.key` | | 请求体参数 | `req.body.key`(需中间件) | 如果你有具体场景或代码示例,我可以帮你进一步分析。
上一篇:
nodejs如何实现一个简单的命令行交互程序?
下一篇:
electron打包成exe后debug 控制台 调试的方法
标题录入,一次不能超过6条
留言
评论