Neste documento, mostramos como publicar mensagens em um tópico com um esquema.
Antes de começar
Antes de configurar o fluxo de trabalho de publicação, faça o seguinte tarefas:
- Entenda como os esquemas do Pub/Sub funcionam.
- Associar um esquema a um tópico.
Funções exigidas
Para ter as permissões necessárias para publicar mensagens em um tópico,
peça ao administrador para conceder a você
Editor do Pub/Sub (roles/pubsub.publisher
) no tópico.
Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.
Também é possível conseguir as permissões necessárias com papéis personalizados ou outros papéis predefinidos.
Você precisa de permissões adicionais para criar ou atualizar tópicos e assinaturas.Publicar mensagens com esquema
É possível publicar mensagens em um tópico associado a um esquema.
É preciso codificar as mensagens no esquema e no formato especificados
quando você criou o tópico. Quando uma mensagem não
corresponder ao esquema associado ao tópico, o Pub/Sub retornará uma
INVALID_ARGUMENT
erro na solicitação de publicação.
gcloud
No Console do Google Cloud, ative o Cloud Shell.
Na parte inferior do Console do Google Cloud, uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com a CLI do Google Cloud já instalada e com valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.
Publique uma mensagem de amostra usando o comando gcloud pubsub topics publish.
gcloud pubsub topics publish TOPIC_ID \ --message=MESSAGE
Substitua:
TOPIC_ID: nome do tópico que você já criou.
MESSAGE: mensagem publicada no tópico. Um exemplo de mensagem pode ser
{"name": "Alaska", "post_abbr": "AK"}
.
C++
Antes de tentar esse exemplo, siga as instruções de configuração do C++ em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub C++.
Avro ProtoC#
Antes de tentar esse exemplo, siga as instruções de configuração do C# em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub C#.
Avro ProtoGo
Antes de tentar esse exemplo, siga as instruções de configuração do Go em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub Go.
Avro ProtoJava
Antes de tentar essa amostra, siga as instruções de configuração do Java em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub Java.
Avro ProtoNode.js
Antes de tentar essa amostra, siga as instruções de configuração do Node.js em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub Node.js.
Avro Buffer de protocoloNode.js
Antes de tentar essa amostra, siga as instruções de configuração do Node.js em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub Node.js.
Avro Buffer de protocoloPHP
Antes de tentar esse exemplo, siga as instruções de configuração do PHP em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub PHP.
Avro Buffer de protocoloPython
Antes de tentar esse exemplo, siga as instruções de configuração do Python em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub Python.
Avro Buffer de protocoloRuby
Antes de tentar esse exemplo, siga as instruções de configuração do Ruby em Guia de início rápido: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Pub/Sub Ruby.
Avro Buffer de protocoloA seguir
Para restringir os locais onde o Pub/Sub armazena dados de mensagens, consulte Como restringir locais dos recursos do Pub/Sub.
Para saber mais sobre como receber mensagens, consulte Escolha um tipo de assinatura.