为了账号安全,请及时绑定邮箱和手机立即绑定

在同一项目中列出来自 Cloud Function 的 GCS 存储桶 blob

在同一项目中列出来自 Cloud Function 的 GCS 存储桶 blob

慕仙森 2023-08-22 16:19:14
我想列出同一项目中 Google Cloud Function 的存储桶中的文件。现在,我的云功能代码是main.pyfrom google.cloud import storagedef my_function(event, context):    storage_client = storage.Client()    blobs = storage_client.list_blobs("my_bucket")    for blob in blobs:        print(blob.name)要求.txtgoogle-cloud==0.34.0我收到的错误是从 google.cloud 导入存储 ImportError:无法从“google.cloud”(未知位置)导入名称“存储”我的印象是它google-cloud会预加载在运行云功能的机器上,但事实似乎并非如此。如何列出存储桶中的文件?
查看完整描述

2 回答

?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

google-cloud 模块(按原样)已弃用。最新版本是 2018 年的。

您只需在requirements.txt中指定google-cloud-storage,如下所示:

google-cloud-storage>=1.31.0

pypy 和google-cloud-python github 页面都表示您需要导入您将使用的服务的模块。

截至今天(2020 年 9 月),当您仅安装 google-cloud-storage 时,它最终会将 google-cloud 作为依赖项安装,但无需使用它或从代码中导入它。

另外,请记住,执行云功能的服务帐户必须具有“storage.buckets.list”IAM 权限。


查看完整回答
反对 回复 2023-08-22
?
慕勒3428872

TA贡献1848条经验 获得超6个赞

google-cloud依赖项包含 Google Cloud 客户端库的所有常见元素。但它并不包含所有 GCP 产品的所有库。

因此,您必须包含云存储的客户端库

您可以删除google-cloud依赖项,因为它会自动包含在依赖google-cloud-storage项中


查看完整回答
反对 回复 2023-08-22
  • 2 回答
  • 0 关注
  • 1611 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信