本文說明如何列出 Pub/Sub 主題。如要列出主題,可以使用 Google Cloud 控制台、gcloud CLI、用戶端程式庫或 Pub/Sub API。
事前準備
必要角色和權限
如要取得列出及管理主題所需的權限,請要求管理員授予您主題或專案的 Pub/Sub 編輯者(roles/pubsub.editor
) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這個預先定義的角色具備列出及管理主題所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要列出及管理主題,必須具備下列權限:
-
建立主題:
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「Topics」(主題) 頁面。
「主題」頁面會列出所有可用的主題。
根據預設,控制台會傳回 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
- PROJECT_ID 是您的專案 ID。
根據預設,每個查詢會傳回最多 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++
在試用這個範例之前,請先按照快速入門:使用用戶端程式庫中的 C++ 設定操作說明進行操作。詳情請參閱 Pub/Sub C++ API 參考說明文件。
C#
在嘗試這個範例之前,請先按照快速入門:使用用戶端程式庫中的 C# 設定操作說明進行操作。詳情請參閱 Pub/Sub C# API 參考說明文件。
Go
以下範例使用 Go Pub/Sub 用戶端程式庫的主要版本 (v2)。如果您仍在使用第 1 版程式庫,請參閱第 2 版遷移指南。如要查看第 1 版程式碼範例清單,請參閱 已淘汰的程式碼範例。
在試用這個範例之前,請先按照快速入門:使用用戶端程式庫中的操作說明設定 Go 環境。詳情請參閱 Pub/Sub Go API 參考說明文件。
Java
在試用這個範例之前,請先按照快速入門:使用用戶端程式庫中的 Java 設定操作說明進行操作。詳情請參閱 Pub/Sub Java API 參考說明文件。
Node.js
在嘗試這個範例之前,請先按照快速入門:使用用戶端程式庫中的 Node.js 設定說明進行操作。詳情請參閱 Pub/Sub Node.js API 參考說明文件。
Node.ts
在嘗試這個範例之前,請先按照快速入門:使用用戶端程式庫中的 Node.js 設定說明進行操作。詳情請參閱 Pub/Sub Node.js API 參考說明文件。
PHP
在試用這個範例之前,請先按照快速入門:使用用戶端程式庫中的 PHP 設定說明進行操作。 詳情請參閱 Pub/Sub PHP API 參考說明文件。
Python
在試用這個範例之前,請先按照快速入門:使用用戶端程式庫中的 Python 設定操作說明來進行。詳情請參閱 Pub/Sub Python API 參考說明文件。
Ruby
以下範例使用 Ruby Pub/Sub 用戶端程式庫 v3。如果您仍在使用第 2 版程式庫,請參閱 第 3 版遷移指南。如要查看 Ruby 第 2 版程式碼範例清單,請參閱 已淘汰的程式碼範例。
在試用這個範例之前,請先按照「快速入門:使用用戶端程式庫」的操作說明設定 Ruby 環境。詳情請參閱 Pub/Sub Ruby API 參考說明文件。