Este documento descreve como listar um tópico do Pub/Sub. Para listar um tópico, pode usar a Trusted Cloud consola, a CLI gcloud, a biblioteca cliente ou a API Pub/Sub.
Antes de começar
- Saiba mais sobre os tópicos e o fluxo de trabalho de publicação de mensagens.
- Crie um tópico.
Funções e autorizações necessárias
Para receber as autorizações de que
precisa para listar tópicos e geri-los,
peça ao seu administrador para lhe conceder a
função IAM de editor do Pub/Sub(roles/pubsub.editor
)
no seu tópico ou projeto.
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Esta função predefinida contém as autorizações necessárias para listar tópicos e geri-los. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:
Autorizações necessárias
São necessárias as seguintes autorizações para listar tópicos e geri-los:
-
Crie um tópico:
pubsub.topics.create
-
Eliminar um tópico:
pubsub.topics.delete
-
Desassociar uma subscrição de um tópico:
pubsub.topics.detachSubscription
-
Obter um tópico:
pubsub.topics.get
-
Indique um tópico:
pubsub.topics.list
-
Publicar num tópico:
pubsub.topics.publish
-
Atualize um tópico:
pubsub.topics.update
-
Obtenha a Política IAM para um tópico:
pubsub.topics.getIamPolicy
-
Configure a política IAM para um tópico:
pubsub.topics.setIamPolicy
Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.
Pode configurar o controlo de acesso ao nível do projeto e ao nível do recurso individual. Pode criar uma subscrição num projeto e anexá-la a um tópico localizado num projeto diferente. Certifique-se de que tem as autorizações necessárias para cada projeto.
Indique um tópico
Consola
Na Trusted Cloud consola, aceda à página Tópicos do Pub/Sub.
A página Tópicos apresenta todos os tópicos disponíveis.
Por predefinição, a consola devolve 50 tópicos. Pode aumentar este valor para devolver um máximo de 200 tópicos usando o botão de menu pendente Linhas por página. Este botão só aparece na consola se tiver mais de 20 tópicos num projeto.
gcloud
-
In the Trusted Cloud console, activate Cloud Shell.
At the bottom of the Trusted 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.
-
Para apresentar uma lista de tópicos, use o comando
gcloud pubsub topics list
:gcloud pubsub topics list
- PROJECT_ID é o ID do seu projeto.
Por predefinição, é devolvido um máximo de 100 resultados por consulta.
Pode especificar um valor alternativo de até 1000 através do parâmetro de tamanho da página.
Por exemplo, através da Google Cloud CLI, especifique --page-size=1000
.
REST
Para listar tópicos, use o método
projects.topics.list
:
Pedido:
O pedido tem de ser autenticado com um token de acesso no cabeçalho Authorization
. Para obter uma chave de acesso para as
Credenciais padrão da aplicação atuais: gcloud auth application-default print-access-token
.
GET https://pubsub.googleapis.com/v1/projects/PROJECT_ID/topics Authorization: Bearer ACCESS_TOKEN
Onde:
Resposta:
{ "topics": [ { "name": "projects/PROJECT_ID/topics/mytopic1", ... }, { "name": "projects/PROJECT_ID/topics/mytopic2", ... } ] }
C++
Antes de experimentar este exemplo, siga as instruções de configuração do C++ no artigo Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C++ do Pub/Sub.
C#
Antes de experimentar este exemplo, siga as instruções de configuração do C# em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API C# do Pub/Sub.
Ir
O exemplo seguinte usa a versão principal da biblioteca de cliente Go Pub/Sub (v2). Se ainda estiver a usar a biblioteca v1, consulte o guia de migração para a v2. Para ver uma lista de exemplos de código da v1, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Go em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Go do Pub/Sub.
Java
Antes de experimentar este exemplo, siga as instruções de configuração do Java no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Java do Pub/Sub.
Node.js
Antes de experimentar este exemplo, siga as instruções de configuração do Node.js em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js do Pub/Sub.
Node.ts
Antes de experimentar este exemplo, siga as instruções de configuração do Node.js em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Node.js do Pub/Sub.
PHP
Antes de experimentar este exemplo, siga as instruções de configuração do PHP no artigo Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API PHP Pub/Sub.
Python
Antes de experimentar este exemplo, siga as instruções de configuração do Python em Início rápido: usar bibliotecas cliente. Para mais informações, consulte a documentação de referência da API Python Pub/Sub.
Ruby
O exemplo seguinte usa a biblioteca cliente Ruby Pub/Sub v3. Se ainda estiver a usar a biblioteca v2, consulte o guia de migração para a v3. Para ver uma lista de exemplos de código do Ruby v2, consulte os exemplos de código descontinuados.
Antes de experimentar este exemplo, siga as instruções de configuração do Ruby em Início rápido: usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Ruby Pub/Sub.
O que se segue?
Escolha o tipo de subscrição para o seu tópico.
Crie uma subscrição para o seu tópico: pull, push ou BigQuery.
Crie ou modifique um tópico com a CLI gcloud.
Crie ou modifique um tópico com APIs REST.