Tengo el siguiente código Node.js:
var express = require('express');
var app = express.createServer(express.logger());
app.use(express.bodyParser());
app.post('/', function(request, response) {
response.write(request.body.user);
response.end();
});
Ahora si publico algo como:
curl -d user=Someone -H Accept:application/json --url http://localhost:5000
Me pongo Someone
como se esperaba. Ahora, ¿qué pasa si quiero obtener el cuerpo completo de la solicitud? Intenté hacerlo, response.write(request.body)
pero Node.js arroja una excepción que dice "el primer argumento debe ser una cadena o Buffer " y luego pasa a un "bucle infinito" con una excepción que dice " No se pueden establecer encabezados después de que se envían "; Esto también es cierto incluso si lo hice var reqBody = request.body;
y luego escribir response.write(reqBody)
.
¿Cuál es el problema aquí?
Además, ¿puedo obtener la solicitud sin procesar sin usar express.bodyParser()
?
response.write(reqBody)
; cuando uso lasresponse.send(reqBody)
cosas funcionan bien ... y sí, usoresponse.end
despuésresponse.write
.