首页 > 解决方案 > Express + Typescript:“请求”类型上不存在属性“正文”

问题描述

我得到以下代码:

import bodyParser from 'body-parser';
import express, { Router } from 'express';

const router: Router = express.Router();

router.use(bodyParser.json());

router.post('/api/users/signup', (req: express.Request, res: express.Response) => {
    const {email, password} = req.body;

    if (!email || typeof email !== 'string') {
        res.status(400).send('Provide a valid email');
    }
});

export {router as signUpRouter};

在这里,req.body显示错误

“请求”类型上不存在属性“正文”

我已经下载了以下库:

npm install express @types/express body-parser @types/body-parser typescript ts-node-dev

标签: node.jstypescriptexpressbackendbody-parser

解决方案


如果您使用的是新的节点版本(v14+)和Express v4.16.0 onwards,请替换

router.use(bodyParser.json());

router.use(express.json());


推荐阅读