Bence responsenesnenin kullanımını onunla karıştırıyorsunuz request.
responseEğer gövdesini erişmek isteyen oysa nesne, çağıran müşteriye HTTP yanıt geri göndermek içindir request. Bazı rehberlik sağlayan bu cevaba bakınız .
Geçerli bir JSON kullanıyorsanız ve ile POSTing Content-Type: application/jsonyapıyorsanız bodyParser, istek gövdesini ayrıştırmak ve sonucu request.bodyrotanıza yerleştirmek için ara katman yazılımını kullanabilirsiniz .
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);
Aşağıdakiler boyunca test edin:
$ curl -d '{"MyKey":"My Value"}' -H "Content-Type: application/json" http://127.0.0.1:3000/
{"MyKey":"My Value"}
Express 4+ için güncellendi
V4'ten sonra gövde ayrıştırıcı kendi npm paketine bölündü, ayrı bir kurulum gerektiriyor 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);
Express 4.16+ için güncelleme
4.16.0 sürümünden başlayarak yeni bir express.json()ara katman yazılımı kullanıma sunuldu.
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