使用 node.js 显示来自 gcloud 存储桶文件的元数据

Display metadata from gcloud bucket files w/ node.js

我已经创建了我的 gcloud 存储桶文件数组,我想知道如何检索文件名和其他元数据以便在我的代码中显示它们以获取每个文件的卡片 like that是 ? 感谢您的帮助。

app.js

router.get('/', async(req, res) => {
  let bucketName = 'bucket-name'

  const storage = Storage();

  const [files] = await storage.bucket(bucketName).getFiles();
  let result = [];
  files.forEach(file => {
    result.push(file.name);
  });
  res.render('views/list.ejs');
  });

查看 Node.js Client Library reference(向下滚动一点,直到 'Another example',您可以在其中看到可用的元数据属性)。

您可以通过以下方式获取对象的元数据:

const [files] = await storage.bucket(bucketName).getFiles();
let result = [];
for (const file of files) {
  const [metadata] = await file.getMetadata();
  result.push(metadata);
};

上面的代码会将对象的元数据(在字典中)存储在数组 'result' 中。以下是您如何访问属于该数组的对象的元数据:

let testObjName = result[0].name;
let testObjSize = result[0].size;

console.log(`Object ${testObjName} of ${testObjSize} bytes`);

metadata.name 会给你对象的名称,而 metadata.size - 它的大小。