¿Por qué recibo este mensaje de error?
Esta es la única ruta por correo. Por lo que puedo ver, no hay otro lugar donde se envíe un encabezado.
Tampoco entiendo por qué body.content se evalúa como indefinido, aunque se envía un objeto y el encabezado está configurado en json. Por cierto, el analizador de cuerpo o app.use(bodyParser.json()) no hizo nada.
"expreso": "^4.17.3"
estoy agradecido por la ayuda
const express = require("express"); const app = express(); app.use(express.json()); app.post("/api/persons/", (req, res) => { const body = req.body; //if body has no data return here console.log(body.content); if (!body.content) { return res.status(400).end().json({ error: "missing content" }); } //generate entry in list const person = { number: body.number, name: body.name, id: generateID(), }; persons = persons.concat(person); res.json(person); });.end finaliza la respuesta. Si llama a .end , no puede enviar nada después. Simplemente elimine esa parte y llame . json para enviar los datos al cliente, sin matar la respuesta en el medio.
if (!body.content) { return res.status(400).json({ error: "missing content" }); }