4
其實我來跨兩個問題,使用強大的與快遞時,如何改變上傳路徑在node.js中
首先,如何改變上傳路徑
我的文件夾結構是這樣的:
|__app.js
|__upload
我的節點代碼是在app.js然後從其引導, 所以我要上傳圖片上傳到上傳文件夾,我改變路徑:
var form = new formidable.IncomingForm;
form.uploadDir = "./upload";
它似乎上傳成功,但我不知道文件去哪裏, 它不在上傳文件夾中。
那麼什麼是正確的路徑名?
第二個問題是
如果我不改變它,它可以正確上傳到C:/Users/ADMINI~1/AppData/Local/Temp
但它會沒有foramt改名,
所以我怎樣才能上傳格式和我自己改名?
第三個問題是
我也綁定處理程序的process
事件, 像
form.on('progress', function(bytesReceived, bytesExpected) {
console.log(bytesReceived + ' ' + bytesExpected);
});
但似乎不起作用,當上傳日誌什麼。爲什麼?我錯過了什麼?
這裏是我的所有代碼:
你要告訴您的應用程序,你不想讓bodyParser
來處理文件上傳的
app.post('/upload', function (req, res) {
var form = new formidable.IncomingForm;
// form.uploadDir = "./upload";
console.log(form.uploadDir);
form.parse(req, function(err, fields, files){
if (err) return res.end('You found error');
console.log(files.image);
});
form.on('progress', function(bytesReceived, bytesExpected) {
console.log(bytesReceived + ' ' + bytesExpected);
});
form.on('error', function(err) {
res.writeHead(200, {'content-type': 'text/plain'});
res.end('error:\n\n'+util.inspect(err));
});
// res.end('Done');
res.send("well done");
return;
})