首页 > 解决方案 > 如何使用 rest api 在 Google Cloud Storage 中下载文件

问题描述

场景:与dcm API相关的存储桶中存储了多个文件夹和许多文件。(点击,印象,每日汇总文件等)。 https://console.cloud.google.com/storage/browser/dcmaccountno

是否可以使用 rest api 下载文件,目前我有服务帐户和私钥。我们对 goog 云存储的了解不多,因此任何小的帮助都会非常可观。

感谢您的任何帮助!

标签: google-cloud-storagegoogle-apps

解决方案


您可以调用以下两种 REST API 中的任何一种:JSON 或 XML。在任何情况下,您都需要从 OAuth 2.0 获取授权访问令牌,如文档中所述,然后将 cURL 与 GET 对象请求一起使用:

JSON API:

curl -X GET \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    -o "[SAVE_TO_LOCATION]" \
    "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]/o/[OBJECT_NAME]?alt=media"

XML API:

curl -X GET \
    -H "Authorization: Bearer [OAUTH2_TOKEN]" \
    -o "[SAVE_TO_LOCATION]" \
    "https://storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME]"

请注意,对于多个文件,您必须对请求进行编程,因此如果您想轻松下载存储桶或子目录中的所有对象,最好使用gsutil


推荐阅读