【发布时间】:2021-03-29 13:25:30
【问题描述】:
我有一个 api 应该接收数据以保存在数据库中,但是当我调用 put 方法时,我的 req.body.nome 返回空,但是当我使用 form-urlencoded 时它的工作。我尝试使用正文解析器,但不推荐使用正文解析器。
我的代码
//my server
const express = require('express')
const bodyParser = require('body-parser')
const cors = require('cors')
const app = express();
var corsOptions = {
origin: 'http://localhost:8001'
};
app.use(cors(corsOptions));
app.use(express.json());
app.use(express.raw())
...
//routers
module.exports = app => {
const conta = require('../controllers/createCount');
var router = require('express').Router();
router.post('/teste', conta.createCount)
app.use('/api', router)
}
// my controller
exports.createCount = (req, res) =>{
const conta = new Contas({
Nome: req.body.nome,
Valor: req.body.valor,
Historico: req.body.historico,
DataEmissao: req.body.dataEmissao,
DataVencimento: req.body.dataVencimento
});
conta
.save(conta)
.then(data => {
res.send(data)
console.log(conta)
})
}
【问题讨论】:
-
"body parser is deprecated" - 这完全不正确。见this Stack Overflow thread。
标签: javascript node.js express