本文档介绍了如何列出 Pub/Sub 主题。如需列出主题,您可以使用 Google Cloud 控制台、gcloud CLI、客户端库或 Pub/Sub API。
准备工作
所需的角色和权限
如需获得列出主题和管理主题所需的权限,请让您的管理员为您授予主题或项目的 Pub/Sub Editor(roles/pubsub.editor
) IAM 角色。
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
此预定义角色包含列出主题和管理主题所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
如需列出主题并进行管理,您需要具备以下权限:
-
创建主题:
pubsub.topics.create
-
删除主题:
pubsub.topics.delete
-
将订阅与主题分离:
pubsub.topics.detachSubscription
-
获取主题:
pubsub.topics.get
-
列出某个主题:
pubsub.topics.list
-
发布到主题:
pubsub.topics.publish
-
更新主题:
pubsub.topics.update
-
获取主题的 IAM 政策:
pubsub.topics.getIamPolicy
-
为主题配置 IAM 政策:
pubsub.topics.setIamPolicy
您可以在项目级别和各个资源级别配置访问权限控制。您可以在一个项目中创建订阅,并将其附加到位于其他项目中的主题。确保您对每个项目拥有所需的权限。
列出主题
控制台
在 Google Cloud 控制台中,转到 Pub/Sub 主题页面。
主题页面列出了所有可用的主题。
默认情况下,控制台会返回 50 个主题。您可以使用“每页行数”下拉切换开关来增加此值,最多可返回 200 个主题。只有当项目中有超过 20 个主题时,控制台中才会显示此切换开关。
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
如需列出主题,请使用
gcloud pubsub topics list
命令:gcloud pubsub topics list
默认情况下,每个查询最多返回 100 个结果。
您可以使用页面大小参数指定一个其他值(最高 1,000)。
例如,使用 Google Cloud CLI 指定 --page-size=1000
。
REST
如需列出主题,请使用 projects.topics.list
方法:
请求:
必须使用 Authorization
标头中的访问令牌对请求进行身份验证。如需获取当前应用默认凭据的访问令牌,请运行以下命令:gcloud auth application-default print-access-token
。
GET https://pubsub.googleapis.com/v1/projects/PROJECT_ID/topics Authorization: Bearer ACCESS_TOKEN
其中:
回答:
{ "topics": [ { "name": "projects/PROJECT_ID/topics/mytopic1", ... }, { "name": "projects/PROJECT_ID/topics/mytopic2", ... } ] }
C++
在尝试此示例之前,请按照 Pub/Sub 快速入门:使用客户端库中的 C++ 设置说明进行操作。 如需了解详情,请参阅 Pub/Sub C++ API 参考文档。
如需向 Pub/Sub 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
C#
在尝试此示例之前,请按照 Pub/Sub 快速入门:使用客户端库中的 C# 设置说明进行操作。 如需了解详情,请参阅 Pub/Sub C# API 参考文档。
如需向 Pub/Sub 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Go
在尝试此示例之前,请按照 Pub/Sub 快速入门:使用客户端库中的 Go 设置说明进行操作。 如需了解详情,请参阅 Pub/Sub Go API 参考文档。
如需向 Pub/Sub 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
在尝试此示例之前,请按照 Pub/Sub 快速入门:使用客户端库中的 Java 设置说明进行操作。 如需了解详情,请参阅 Pub/Sub Java API 参考文档。
如需向 Pub/Sub 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
Node.js
PHP
在尝试此示例之前,请按照 Pub/Sub 快速入门:使用客户端库中的 PHP 设置说明进行操作。 如需了解详情,请参阅 Pub/Sub PHP API 参考文档。
如需向 Pub/Sub 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
在尝试此示例之前,请按照 Pub/Sub 快速入门:使用客户端库中的 Python 设置说明进行操作。 如需了解详情,请参阅 Pub/Sub Python API 参考文档。
如需向 Pub/Sub 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Ruby
在尝试此示例之前,请按照 Pub/Sub 快速入门:使用客户端库中的 Ruby 设置说明进行操作。 如需了解详情,请参阅 Pub/Sub Ruby API 参考文档。
如需向 Pub/Sub 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。