如何在Node JS中简单读取POST数据?

时间:2011-04-03 06:56:42

标签: javascript http post node.js

我用这段代码来读取查询字符串吗?name = Jeremy ...谁能告诉我如何用帖子数据做这个?还有json?

var http = require('http'), url = require('url');
http.createServer(function(request, response) {
    response.writeHead(200, {"Content-Type":"text/plain"});
    var urlObj = url.parse(request.url, true);
    response.write("Hello " + urlObj.query["name"] + "!\n");
}).listen(8000);

谢谢!

1 个答案:

答案 0 :(得分:20)

您必须处理data个对象的endhttp.ServerRequest个事件。例如:

var util = require("util"),
    http = require('http'), 
     url = require('url'),
      qs = require('querystring');

...

// this is inside path which handles your HTTP POST method request
if(request.method === "POST") {
    var data = "";

    request.on("data", function(chunk) {
        data += chunk;
    });

    request.on("end", function() {
        util.log("raw: " + data);

        var json = qs.parse(data);

        util.log("json: " + json);
    });
}

Here是一篇关于这个主题的文章和示例(对于node.js的版本太旧,所以它可能不起作用,但原理是相同的。)