Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

324
Vistas
How to post request?

why is the code outputting an empty req.body

const express = require("express");
const app = express();

app.use(express.urlencoded());

app.get("/", (req, res, next) => {
  res.send(`<script>
    fetch("/push", {
        body: "someText",
        headers: {
            "Content-Type": "text/html; charset=UTF-8",
        },
        method: "POST",
    }).then((data) => console.log(data));
</script>`);
});

app.post("/push", function (req, res, next) {
  console.log(req.body); //empty here //{}
  res.send(req.body);
});

app.listen(3000);
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Your fetch statement makes a POST request with Content-Type: text/html, which is highly unusual. express.urlencoded() does not fill req.body for this content type, it is only meant for Content-Type: application/x-www-form-urlencoded.

You can parse arbitrary textual content with code like this:

var body = "";
req.on('data', function(chunk) {
  body += chunk.toString();
})
.on('end', function() {
  res.send(body);
});
over 4 years ago · Santiago Trujillo Denunciar

0

Just add the express.urlencoded({ extended: true }) also use the express.js

const express = require("express");
const app = express();
app.use(express.urlencoded({ extended: true }));
app.use(express.json())

app.get("/", (req, res, next) => {
  res.send(`<script>
    fetch("/push", {
      body: "someText",
      headers: {
        "Content-Type": "text/html; charset=UTF-8",
      },
      method: "POST",
    }).then((data) => console.log(data));
  </script>`);
});

app.post("/push", function (req, res, next) {
  console.log(req.body);
  res.send(req.body);
});

app.listen(3000);
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda