Penso che stai fondendo l'uso response
dell'oggetto con quello del request
.
L' response
oggetto è per inviare la risposta HTTP al client chiamante, mentre si desidera accedere al corpo di request
. Vedi questa risposta che fornisce alcune indicazioni.
Se si utilizza JSON valido e lo si sta postando Content-Type: application/json
, è possibile utilizzare il bodyParser
middleware per analizzare il corpo della richiesta e inserire il risultato nel request.body
percorso.
var express = require('express')
, app = express.createServer();
app.use(express.bodyParser());
app.post('/', function(request, response){
console.log(request.body); // your JSON
response.send(request.body); // echo the result back
});
app.listen(3000);
Prova seguendo le linee di:
$ curl -d '{"MyKey":"My Value"}' -H "Content-Type: application/json" http://127.0.0.1:3000/
{"MyKey":"My Value"}
Aggiornato per Express 4+
Body parser è stato suddiviso nel suo pacchetto npm dopo v4, richiede un'installazione separata npm install body-parser
var express = require('express')
, bodyParser = require('body-parser');
var app = express();
app.use(bodyParser.json());
app.post('/', function(request, response){
console.log(request.body); // your JSON
response.send(request.body); // echo the result back
});
app.listen(3000);
Aggiornamento per Express 4.16+
A partire dalla versione 4.16.0, express.json()
è disponibile un nuovo middleware.
var express = require('express');
var app = express();
app.use(express.json());
app.post('/', function(request, response){
console.log(request.body); // your JSON
response.send(request.body); // echo the result back
});
app.listen(3000);
request.body.MyKey