Используя популярную среду node.js Express , это просто:
var express = require('express'),
app = express.createServer();
app.use(express.bodyParser());
app.post('/foo', function(req, res, next) {
// Echo the POST body
res.send(req.body);
});
app.listen(3000);
Тестирование с помощью curl:
curl -d foo=1 -d foo=2 localhost:3000/foo
Как и в PHP, req.body.foo
будет массивом со всеми опубликованными вами фоами.
Редактировать: Модуль querystring
- это действительно то, что Express использует внутри. Если вам нужно принять загрузку файлов, используйте потрясающий, как предлагает Ян Jongboom. В противном случае, вот как вы бы это делали, используя только узел:
var http = require('http'),
qs = require('querystring');
var app = http.createServer(function(req, res) {
var buffer = '';
req.setEncoding('utf-8');
req.on('data', function(data) {
buffer += data;
});
req.on('end', function() {
var body = qs.parse(buffer);
});
});