我在我的应用程序中设置了gcloud,我似乎已成功通过身份验证。我可以毫无问题地运行以下内容:
GoogleCloud = require('gcloud')({ /* my credentials */ });
GoogleCloud.storage().createBucket('myBucket', function (err, res) {});
我还可以执行以下操作来检索我的存储桶和文件,没有任何问题:
var bucket = GoogleCloud.storage().bucket('myBucket');
var file = bucket.file('myFileName.ext');
当我file.getMetadata()
时,我看到空对象转换为预期的信息。
但是,当我尝试下载文件时,我遇到了问题。
var pathToFileName = 'public/test.pdf';
file.download({ destination: pathToFileName }, function (err) { console.log(err); });
{ [Error: ENOENT, open '/public/test.pdf'] errno: 34, code: 'ENOENT', path: '/public/test.pdf' }
我尝试将pathToFileName
与/
,./
和../
前置,但没有成功。这是我过去得到的同样的错误,我的配置未经授权或文件名不正确(尽管我当时无法创建存储桶并获取元数据)。但是,acl
或其他一些我不知道的许可仍然存在问题吗?