如果这里有人熟悉 node.js 的 node-cloudfiles 模块,我可以在几个不同的领域使用一些帮助。不幸的是,似乎几乎不可能通过他们的 github repo 联系到作者(编辑:没关系,确实有人联系了我,当我准备好某种答案时,我会发送更新。)
我将从最基本的挑战开始:有没有办法跟踪上传进度?我已经尝试了很多事情,但是从 .addFile 命令返回的对象似乎没有任何形式的进度统计信息。
这是我正在使用的基本概述。
var readStream = fs.createReadStream(path+'.'+extension, streamopts);
var upOpts = {
headers: {
'content-type': 'video/'+extension,
'content-length': totalBytes
},
remote: CDNfilename,
stream: readStream
};
//reqStream is the object returned from the 'request' module,
//which is used by the 'cloudfiles' module.
var reqStream = cloudClient.addFile(Container.name, upOpts, function (err, uploaded) {
if (err) { console.log(err); }
});
一开始我以为我可以只使用.bytesWritten属性连接到一个间隔定时器,但是对象不是一个普通的节点writeStream,所以没有这个属性。