我正在使用node-webkit创建一个桌面应用程序。
该应用程序扫描一个目录并上传该目录中的所有文件到我的服务器。
我已经成功实现了上传功能(由于无法在服务器端启用流传输,因此只能使用POST请求)。
以下是目前的代码,我正在使用request库:
我的问题是,在上传过程中,“data”事件不是上传进度,而是从磁盘读取文件的进度。我尝试为表单添加“data”事件,但结果相同。
基本上,我该如何将文件上传到服务器并向用户报告进度。
我已经成功实现了上传功能(由于无法在服务器端启用流传输,因此只能使用POST请求)。
以下是目前的代码,我正在使用request库:
var r = request.post("http://myserver.com/upload/");
var upload = fs.createReadStream('path/to/my/file.txt')
var form = r.form();
form.append('new_file', upload);
upload.on("data", function (chunk) {
upload_progress += chunk.length
})
upload.on("end", function (res) {
//upload finished
})
我的问题是,在上传过程中,“data”事件不是上传进度,而是从磁盘读取文件的进度。我尝试为表单添加“data”事件,但结果相同。
基本上,我该如何将文件上传到服务器并向用户报告进度。
console.log
消息的速率也变慢了。 - Paul Mougel