【发布时间】:2014-12-03 02:00:54
【问题描述】:
我正在使用 Node.js Dropbox API 读取文件,然后将其存储(在 Windows 上)。
它是一个重命名的 .zip 文件(Node Webkit 包 => .nw)
我的代码:
{responseType: "b"} 代表二进制。
client.readFile("package.nw", {responseType: "b"}, function(error, data) {
if (error) {
return showError(error); // Something went wrong.
throw new Error(error);
}
toastr.info("Storing update..");
console.log(data);
fs.writeFile("package.nw", data, 'binary', function(err) {
if(err) {
return showError(error);
}
toastr.info("Update complete!");
});
});
当我尝试打开包裹时,它已损坏。
我怎样才能正确保存它? 在此先感谢,杰伦
【问题讨论】:
-
我认为您最好使用
{responseType: "buffer"},然后从writeFile中删除您的'binary'参数。没用过这个模块,但我的快速检查中是这样的。 -
原始文件大小为541kb(上传的package.nw)。当我使用“缓冲区”时,文件大小变为 1008kb,并且存档仍然损坏..
标签: node.js binary dropbox-api node-webkit fs