java - 如何在 Google Cloud Storage 中获取项目 ID

标签 java google-cloud-storage

我已经在我的 Gmail 帐户上激活了 Google Cloud Storage,然后创建了一个新项目。据我所知,并阅读教程 ( https://developers.google.com/storage/docs/json_api/v1/json-api-java-samples ),客户端 secret (client_secrets.json) 与项目相关,与我的帐户无关。

现在,在使用 Java API 时,有一种方法可以接收桶列表,

https://developers.google.com/storage/docs/json_api/v1/buckets/list

虽然它要求我输入项目标识符作为参数。

我检查了 API 文档、下载客户端 secret 文件 (client_secrets.json) 和 Java 方法,但没有提供与经过身份验证的客户端 secret 项目相关的“项目标识符”。

有什么方法可以查明我在哪个项目上进行了主动身份验证?我不希望程序用户每次在 Java 程序中进行身份验证时都记住每个项目的标识符。客户端 secret 文件已与单个项目相关。


额外信息: 目前我开发了一个 GUI Java 应用程序。 通过使用打开文件对话框,用户选择下载的“client_secrets.json”文件。 然后我使用该示例提供的“授权”方法来获取 CredentialsStorage 对象。

在此之后,我想以编程方式列出当前项目中可用的所有存储桶。 (当前项目 = client_secrets.json 从特定项目下载。)。但是 API 要求我输入似乎无法以编程方式获取的项目名称。

最佳答案

运行

gsutil ls -L -b gs://<bucket-name>

要获取存储桶信息,您可以从输出中找到项目编号。然后你就可以跑了

gcloud projects list --filter "PROJECT_NUMBER=<project-number>"

找出项目 ID。

关于java - 如何在 Google Cloud Storage 中获取项目 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24682180/

相关文章:

java - 将多模块项目迁移到微服务?

google-cloud-storage - gsutil make bucket 命令 [gsutil mb] 不起作用

ios - Firebase 和 Google 云存储 API

python - 使用python从云存储桶下载文件时如何显示进度条

java - AWS Java 开发工具包 : Specifying KMS Key Id For EBS

java - 使用日期错误打印该月的天数?

java - 用于检查用户是否存在于数据库中的 Firebase 身份验证

java - 读取音频文件时出现NullPointer异常

java - 已弃用的 'GoogleCredential' 的替代方案是什么?

java - 哪里可以获得最新的 Google 云存储客户端