【发布时间】:2018-02-26 18:29:03
【问题描述】:
我尝试了目录上传https://stackoverflow.com/a/8218074/2004910 的新功能,但我没有收到服务器请求的确切文件夹结构。
HTML
<form action="http://localhost:3000/" method="post" enctype="multipart/form-data">
<input id="files" class="file" type="file" name="file[]" webkitdirectory directory>
<input type="submit" />
请求负载(网络面板)
ExpressJS:
const express = require('express')
const app = express()
var busboy = require('connect-busboy');
var fs = require('fs');
//...
app.use(busboy());
app.post('/', function (req, res) {
var fstream;
req.pipe(req.busboy);
req.busboy.on('file', function (fieldname, file, filename) {
console.log("Uploading: " + filename);
fstream = fs.createWriteStream(__dirname + '/files/' + filename);
file.pipe(fstream);
fstream.on('close', function () {
res.redirect('back');
});
});
})
app.listen(3000, function () {
console.log('Example app listening on port 3000!')
})
请建议我如何实现这一目标。
【问题讨论】:
-
“确切的文件夹结构”是什么意思?
-
文件夹结构是用户私有的。您只会收到文件,而不是它们在用户计算机上的位置
-
@guest271314 这意味着如果文件被安排在子文件夹中..我也需要这些信息,以便我可以在服务器上复制相同的文件夹结构。这并不意味着我需要来自用户计算机的完整路径,但应该相对于正在上传的文件夹。
-
@guest271314 请建议使用您的帖子创建相同结构后如何将其发送到服务器:stackoverflow.com/questions/37106121/…
标签: javascript html node.js express