сервер firebase nodejs и хранилище gcloud — получить метаданные

для правильной безопасности моего приложения я был вынужден настроить небольшой сервер nodejs для firebase, но проблемы не закончились .... SDK сервера firebase не поддерживает API хранилища. я читал, что для этого необходим api хранилища gcloud, потому что 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 какую функцию я могу использовать?? Благодарность


person DThink    schedule 07.07.2016    source источник


Ответы (1)


Вы можете использовать getMetadata( ) метод в 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);
  }
});
person Mike McDonald    schedule 08.07.2016