使用Node.js从Google Cloud Platform存储桶中获取文件夹列表
使用Node.js从Google Cloud Platform存储桶中获取文件夹列表
我想在Node.js应用程序上显示Google Cloud Storage存储桶中的所有文件夹,但只有getFiles()函数。
例如,一个名为/ abc的文件夹,其中有2个文件/ a和/ b。我只想得到/ abc /而没有// abc / a和/ abc / b。
app.js
router.get('/', async(req, res) => {
let bucketName = 'my-bucket'
const storage = Storage();
const [files] = await storage.bucket(bucketName).getFiles();
let app = [];
for (const file of files) {
const [metadata] = await file.getMetadata();
app.push(metadata);
};
res.render('views/list.ejs', {
apps : app,
});
});
回答如下:值得注意的是,就像AWS上的S3。 GCS没有“目录”,但有路径。
https://cloud.google/storage/docs/gsutil/addlhelp/HowSubdirectoriesWork
您可以从GCS返回的对象上从.name
访问文件名。您可以在.getFiles()
调用中添加前缀。
router.get('/', async (req, res) => {
const bucketName = 'my-bucket'
const storage = Storage()
const [files] = await storage.bucket(bucketName).getFiles({ prefix: '/abc'})
const objectNames = files.map(file => file.name)
res.render('views/list.ejs', {
apps: objectNames,
})
})
最新文章
- Report中的Drill down
- cmd md命令 创建文件夹
- XML的文件是什么
- “脱离应用开发者的数据库,不会成功”,黄东旭万字长文剖析数据库发展新趋势...
- SNMP
- json php 传输,使用JSON实现数据的跨域传输的php代码
- 简略写dump文件
- Unity数据可视化 温度图效果(一)
- 大数定律的形象理解
- Web兼容性测试的要点
- k8s资源限制——资源的配额管理(Resource Quotas)
- Mac OS X下Adwaremalware 的简单手动排除方法
- 浅谈Android之SurfaceFlinger相关介绍(一)
- WinForm的控件
- R语言实现聚类kmeans
- extern 用法简单示例
- 微信小程序用定时器实现倒计时效果
- pip执行指令后报语法错误sys.stderr.write(f”ERROR: {exc}”)解决办法
- Python爬虫爬取动态网页
- SQL注入