2011-04-10 114 views
3

我已經看到(很少)在node.js上傳服務器的例子, 使用multipart或者強大的lib,處理http post。node.js上傳PUT

但是,如果我想使用PUT上傳文件,作爲東西

%捲曲-T file.tar.gz http://node:8000/upload/

你可以點我一些例子嗎? 我如何閱讀請求正文?

迎接

回答

1

也許我錯了,但如果你以強大的例子置換了「後「把」應該工作。

var formidable = require('formidable'), 
    http = require('http'), 
    sys = require('sys'); 

http.createServer(function(req, res) { 
    if (req.url == '/upload' && req.method.toLowerCase() == 'put') { 
    // parse a file upload 
    var form = new formidable.IncomingForm(); 
    form.parse(req, function(err, fields, files) { 
     res.writeHead(200, {'content-type': 'text/plain'}); 
     res.write('received upload:\n\n'); 
     res.end(sys.inspect({fields: fields, files: files})); 
    }); 
    return; 
    } 

    // show a file upload form 
    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>' 
); 
});