im使用Google API Node.js客户端使用Node.js Program.
在Google Drive上管理文件。我已经成功地使用此库下载了文件,现在我想将文件的更新版本上传回Google drive。
文档在Google Drive上的创建 new 文件非常好解释了:
var fileMetadata = {
'name': 'photo.jpg'
};
var media = {
mimeType: 'image/jpeg',
body: fs.createReadStream('files/photo.jpg')
};
drive.files.create({
resource: fileMetadata,
media: media,
fields: 'id'
}, function (err, file) {
if (err) {
// Handle error
console.error(err);
} else {
console.log('File Id: ', file.id);
}
});
但是,我未能找到有关如何使用新版本覆盖现有文件的任何信息。
堆栈溢出的其他帖子以及Google文档,仅说明如何将REST API直接用于更新文件。
我想知道是否有一种更简单的方法 - 因为提供了一个不错的API客户端库,可以让我创建新文件,它当然也应该让我更新现有的文件?
要更新现有文件,请使用drive.files.update
(在此处定义(。
drive.files.update({
fileId: file.id,
resource: fileMetadata,
media: media
}, (err, file) => {
if (err) {
// Handle error
console.error(err);
} else {
console.log('File Id: ', file.id);
}
});
请注意,您也可以使用Promise接口和async
/await
用于drive.files.create
和drive.files.update
。