router不能获取post路径
时间: 2023-11-27 20:04:00 浏览: 29
在 Express 中,可以使用 `router.post()` 方法来定义 POST 请求的路由。以下是一个例子:
```javascript
const express = require('express')
const router = express.Router()
router.post('/login', (req, res) => {
// 处理登录请求
})
module.exports = router
```
在上面的代码中,我们使用 `router.post()` 方法来定义 POST 请求的路由。当用户向 `/login` 路径发起 POST 请求时,路由器将调用回调函数并处理请求。
在回调函数中,您可以使用 `req.body` 对象来访问 POST 请求的数据。例如,以下代码演示如何获取 POST 请求中的用户名和密码:
```javascript
router.post('/login', (req, res) => {
const { username, password } = req.body
// 验证用户名和密码
})
```
请注意,要访问 `req.body` 对象,您需要使用 Express 的中间件来解析请求正文。例如,`body-parser` 中间件可以解析 JSON、URL 编码和多部分表单数据。您可以在应用程序级别或路由级别使用中间件。以下是一个例子:
```javascript
const express = require('express')
const bodyParser = require('body-parser')
const router = express.Router()
// 在路由级别使用中间件
router.use(bodyParser.json())
router.post('/login', (req, res) => {
const { username, password } = req.body
// 验证用户名和密码
})
module.exports = router
```