我在Google雲端平臺上有一個存儲桶,其中一部分應用程序添加了具有唯一名稱(無擴展名)的小文本文件。Google Cloud Platform文件通過gcloud登錄到節點服務器
第二個應用程序需要檢索單個文本文件(一次只能有一個)以插入到模板中。
我無法找到正確的API調用。
配置是必需的:
var gcloud = require('gcloud');
var gcs = gcloud.storage({
projectId: settings.bucketName,
keyFilename: settings.bucketKeyfile
});
var textBucket = gcs.bucket(settings.bucketTitle);
保存到桶效果很好:
textBucket.upload(fileLocation, function(err, file) {
if(err) {
console.log("File not uploaded: " + err);
} else {
// console.log("File uploaded: " + file);
}
});
下似乎順理成章,但只返回的元數據,而不是在回調使用的實際文件;
textBucket.get(fileName, function(err, file) {
if(err) {
console.log("File not retrieved: " + err);
} else {
callback(file);
}
});
也許並不奇怪,這並不工作,因爲它實際上並不是正式文件,但話又說回來,也不是一個簡單的asnyc函數返回你問一個文件。
Steven,謝謝你 - 我其實剛剛回來寫下我的解決方案,這本質上就是你所說的;在File對象上調用下載。此外,這些文件是JSON,但添加了反斜槓(backslashes) - 需要JSON.parse()。文檔可能沒問題;我只是一個程序員... – Squidinker