require('../test/common');
|
|
var http = require('http'),
|
|
util = require('util'),
|
|
formidable = require('formidable'),
|
|
server;
|
|
|
|
server = http.createServer(function(req, res) {
|
|
if (req.url == '/') {
|
|
res.writeHead(200, {'content-type': 'text/html'});
|
|
res.end(
|
|
'<form action="/upload" enctype="multipart/form-data" method="post">'+
|
|
'<input type="text" name="title"><br>'+
|
|
'<input type="file" name="upload" multiple="multiple"><br>'+
|
|
'<input type="submit" value="Upload">'+
|
|
'</form>'
|
|
);
|
|
} else if (req.url == '/upload') {
|
|
var form = new formidable.IncomingForm(),
|
|
files = [],
|
|
fields = [];
|
|
|
|
form.uploadDir = TEST_TMP;
|
|
|
|
form
|
|
.on('field', function(field, value) {
|
|
console.log(field, value);
|
|
fields.push([field, value]);
|
|
})
|
|
.on('file', function(field, file) {
|
|
console.log(field, file);
|
|
files.push([field, file]);
|
|
})
|
|
.on('end', function() {
|
|
console.log('-> upload done');
|
|
res.writeHead(200, {'content-type': 'text/plain'});
|
|
res.write('received fields:\n\n '+util.inspect(fields));
|
|
res.write('\n\n');
|
|
res.end('received files:\n\n '+util.inspect(files));
|
|
});
|
|
form.parse(req);
|
|
} else {
|
|
res.writeHead(404, {'content-type': 'text/plain'});
|
|
res.end('404');
|
|
}
|
|
});
|
|
server.listen(TEST_PORT);
|
|
|
|
console.log('listening on http://localhost:'+TEST_PORT+'/');
|