{"content": "test data"}を見ることができるようにしたいです(クライアントから本文として送信されるはずです私のサーバーコンソールで)POSTリクエストの、代わりに私が手に:ここJavascriptクライアントはPOSTリクエストでボディを送信しますが、node.jsサーバーはそれを空にします
Listening to 8080...
I'm in myServer.use
POST request received
req.params: {}
req.body: undefined
req.query: {}
は私のクライアントである、それは彼のonclickの機能を起動するだけのボタンです:ここで
<!DOCTYPE html>
<html>
<head>
<title>REST WebClient</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<p>This web is a REST client.</p>
<script type="text/javascript">
function POSTpressed(){
//Making the request
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("POST", 'http://127.0.0.1:8080/v0/prueba/', true); // false for synchronous request
xmlHttp.send({"content":"test data"});
}
</script>
<input type="button" onclick="POSTpressed();" id="POSTbutton" value="POST"/>
</body>
</html>
サーバーです。誰かがそれを再現しようとすると、 "express"ライブラリをインストールする必要があります。
var express = require('express');
var myServer = express();
//stuff for server to going on
myServer.use(function(req, res, next){
console.log("I'm in myServer.use");
res.set('Content-Type', 'application/json');
res.setHeader('Access-Control-Allow-Origin', '*'); //general access
next();
});
//function which handles POST requests
myServer.post('/v0/prueba/', function(req, res){
console.log('POST request received');
//trying to see the sent body
console.log("req.params: "+JSON.stringify(req.params));
console.log("req.body: "+ req.body); //req.body.content would throw error: no content in undefined
console.log("req.query: "+ JSON.stringify(req.query));
res.send(null);
});//myServer.post
myServer.listen(8080);
console.log('Listening to 8080...');