在Google云端存储中使用nodejs gcloud api移动/重命名文件夹
我正尝试使用gcloud api重命名或移动Google云端存储中的文件夹。
类似的问题解释了如何删除文件夹: 使用nodejs gcloud api删除Google云端存储中的文件夹
但是,如何重命名一个文件夹? 或移动到另一个path?
你可以尝试这样的事情:
'use strict' var async = require('async') var storage = require('@google-cloud/storage')() var bucket = storage.bucket('stephen-has-a-new-bucket') bucket.renameFolder = function(source, dest, callback) { bucket.getFiles({ prefix: source }, function(err, files) { if (err) return callback(err) async.eachLimit(files, 5, function(file, next) { file.move(file.name.replace(source, dest), next) }, callback) }) } bucket.renameFolder('photos/cats', 'photos/dogs', console.log)
没有文件夹。 简单地说,所有的对象都有相同的关键字前缀,例如photos/animals/cat.png
和photos/animals/dog.png
都有一个共同的前缀photos/animals/
,这就是使它们看起来像在同一个文件夹中。
您将需要将每个对象复制(或移动)到其新的键,例如将photos/animals/cat.png
移动到photos/pets/cat.png
并将photos/animals/dog.png
移动到photos/pets/dog.png
。
也就是说,Google Cloud提供了一种使用gsutil mv从命令行执行此操作的方法。
- setCredentials不是googleapis.auth.OAuth2中的函数
- 如何使用google-api-nodejs-client为nodejs发送带有gmail api附件的邮件
- 使用Google API访问公共日历,无需用户login
- 通过节点客户端调用Google API时出现“套接字挂起”错误
- oauth2Client.getToken缺lessrefresh_token
- 如何撤销由OAuth从谷歌提供的令牌? 的NodeJS
- 如何刷新Google Analytics(分析)报告API v3的访问令牌
- 向节点注册Glass时间线通知
- 如何获得谷歌+用户configuration文件的细节,给出访问令牌和刷新令牌