firebase nodejs 服务器和 gcloud 存储——获取元数据

firebase nodejs server and gcloud storage--get metadata

为了我的应用程序的正确安全性,我不得不为 firebase 设置一个小型 nodejs 服务器,但问题还没有结束....firebase 服务器 sdk 不支持存储 api。我读到这是必需的 gcloud 存储 api,因为 firebase 使用相同的服务。

在服务器端获取文件自定义元数据很重要,因为我必须读取和更新它们。我找不到获取文件元数据的适当函数。在客户端sdk中很简单

// Create a reference to the file whose metadata we want to retrieve
var forestRef = storageRef.child('images/forest.jpg');

// Get metadata properties
forestRef.getMetadata().then(function(metadata) {
  // Metadata now contains the metadata for 'images/forest.jpg'
}).catch(function(error) {
  // Uh-oh, an error occurred!
});

在 gcloud 存储中我可以使用什么功能??谢谢

您需要使用 getMetadata() method in gcloud:

var gcloud = require('gcloud');

// Initialize GCS
var gcs = gcloud.storage({
  projectId: 'my-project',
  keyFilename: '/path/to/keyfile.json'
});

// Reference an existing bucket
var bucket = gcs.bucket('foo.appspot.com');

// Reference to a file
var file = bucket.file('path/to/my/file');

// Get the file metadata
file.getMetadata(function(err, metadata, apiResponse) {
  if (err) {
    console.log(err);
  } else {
    console.log(metadata);
  }
});