【Node.js】GETとPOST の変数を取得してみる

以前、node.js で GET変数を受けられるようにしましたが、

POST でも値が受けられるようにしてみました。(※ 今回は「 msg 」 という変数名)

const http = require('http');
const PORT = 8124;

http.createServer((request, response) => {
request.setEncoding("utf-8");
res.writeHead(200, {
"Content-Type": "application/json",
"Access-Control-Allow-Origin": "*",
})

if (request.method === 'GET') {
const data = require('url').parse( request.url , true );
const msg = data.query.msg + "";

}

if (request.method === 'POST') {
request.on("data", chunk => {
const data = JSON.parse(chunk);
const msg = data["msg"];

});

}

response.end('Finish !\n');

}).listen(PORT);

console.log(Server running at http://localhost:${PORT}/);

追記

上のソースだと、何回かに一回、GET変数が取得できないことがあった。

↓こちらのように、クエリーをパースするのが正解だと思う。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA