Aquí he creado la pequeña demostración para esta API de paso de datos de formulario. Ahora estoy revisando esta API usando cartero pero no obtengo ningún dato.
Código
const http = require("http"); const express = require("express"); const bodyParser = require("body-parser"); const app = express(); app.use( bodyParser.json({ limit: "50mb" }) ); app.use( bodyParser.urlencoded({ limit: "50mb", extended: true }) ); app.post('/form-data', (req, res) => { console.log("form-data ->> ", req.body) }); server = http.createServer(app); server.listen(4000[![enter image description here][1]][1], () => { console.log(`Server started`); });
registro del servidor
Server started form-data ->> {}
Traté de reproducir su código con pequeños cambios.
const express = require("express"); const bodyParser = require("body-parser"); var multer = require("multer"); var upload = multer(); const app = express(); // for parsing application/json app.use( bodyParser.json({ limit: "50mb", }) ); // for parsing application/xwww-form-urlencoded app.use( bodyParser.urlencoded({ limit: "50mb", extended: true, }) ); // for parsing multipart/form-data app.use(upload.array()); app.post("/form-data", (req, res) => { console.log(`\nform-data ->> ${JSON.stringify(req.body)}`); res.send(req.body); }); const port = 3000; app.listen(port, () => { console.log(`Example app listening on port ${port}`); });
Eliminé la inicialización de su servidor ya que podemos usar la aplicación escuchar directamente desde expressjs.
Y puedo enviar una publicación con "form-data", "x-www-form-urlencoded" o "raw" con éxito.
Puede verificar dos veces qué tutorial está siguiendo. Dado que la documentación expresa es lo suficientemente clara.
* Editado, agregué multer para analizar los datos del formulario.