我正在使用nodejs进行战斗,尝试通过api从evernote下载图像。
noteStore.getResourceData(guid, function (err, res) {
console.log(res.length);
});
我对这段代码的问题是,在我的控制台中我可以看到文件的长度,但是一旦我尝试在其他地方使用该值,或者保存文件,我遇到了问题。
var l = res.length;
^
无法读取未定义的属性“长度”
任何想法如何解决这个问题?
我不会保存文件,但是当我使用它时遇到同样的问题:
var wstream = fs.createWriteStream(guid + '.' + type);
wstream.write(res);
答案 0 :(得分:1)
好的,到目前为止,互联网上还没有解决方案,我找到了处理图像下载和保存的方法:
noteStore.getResourceData(guid, function (err, res) {
try{
var buffer = new Buffer(res);
var wstream = fs.createWriteStream(guid + '.' + type, {'flags': 'w', encoding: 'binary'});
wstream.write(buffer, encoding='binary', function(err) {
});
} catch(e) {
console.log(e);
}
});