【问题标题】:How do you download an object from Google Cloud Storage with a gs:// URI in Node.js?如何在 Node.js 中使用 gs:// URI 从 Google Cloud Storage 下载对象?
【发布时间】:2021-11-15 01:06:18
【问题描述】:

我有 gs:// 指向 Google Cloud Storage 中对象的字符串 URI(请参阅 this question 以了解 gs:// URI 的含义)。如何使用 Node.js 下载这些对象? docs 仅包含带有存储桶名称和文件路径的示例:

const {Storage} = require('@google-cloud/storage');
const storage = new Storage();
const myBucket = storage.bucket('my-bucket');

const file = myBucket.file('my-file');

我可以直接从gs:// URI(作为字符串传递)创建file,还是需要手动将 URI 解析为存储桶名称和文件路径?

【问题讨论】:

  • 这能回答你的问题吗? What does gs protocol mean?
  • 不,我知道 gs 协议的含义,我想在 Node.js 中使用它来从 Google Cloud Storage SDK 下载文件。
  • 那么您应该知道gs: 协议仅适用于gsutilgs: 基本上是简写而不是适当的协议。如果您想通过客户端 API 访问这些资源,请不要使用 gs:,正如文档所指示的那样。
  • gs:// 协议是一种用于谷歌云存储对象稳定地址的有用交换格式。它广泛用于 Google Cloud Platform 用户界面以及gsutil 命令行工具。
  • gs:// 只是https://storage.googleapis.com/ 的简写。两者没有区别。

标签: javascript google-cloud-storage


【解决方案1】:

您正在寻找的是使用对象 URI(即gs://bucket_name/file_name)从云存储中获取文件。答案是不可能完成您正在寻找的任务。此外,official client library for Cloud Storage in NodeJS 没有提供任何此类方法来执行此操作。因此,您必须解析对象 URI 并首先使用存储客户端获取存储桶,然后使用存储桶获取 here 或此 github 存储库中提到的对象。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-30
    • 2019-01-26
    • 2013-11-06
    • 2013-08-19
    相关资源
    最近更新 更多