Canais públicos
Um canal Realtime é público, a menos que seu nome comece com private- ou presence-. Um cliente precisa apenas da chave pública do app para se inscrever, então trate o canal como legível por qualquer pessoa que tenha essa chave.
const orders = bird.subscribe("orders");
orders.bind("order-updated", (data) => {
console.log(data);
});let orders = bird.subscribe("orders")
orders.bind("order-updated") { data in
print(data ?? "")
}val orders = bird.subscribe("orders")
orders.bind("order-updated") { data ->
println(data)
}Canais públicos não exigem registro nem endpoint de autorização. Um canal existe enquanto pelo menos uma conexão está inscrita e desaparece quando a última conexão sai.
Quando usar um canal público
Use canais públicos para dados que qualquer visitante pode ler, como resultados de build, placares ao vivo, informações de voos, contagens de espectadores ou incidentes de página de status.
Use um canal privado para dados restritos a um usuário, conta ou tenant. Assinaturas de canais públicos não exigem autorização, então um cliente pode tentar qualquer nome de canal que consiga adivinhar ou construir.
Limitações de canais públicos
- Identidade de membros: canais públicos não rastreiam membros nem expõem uma lista de membros. Os eventos bird:member_added e bird:member_removed pertencem aos canais de presença.
- Eventos de cliente: canais públicos rejeitam eventos cujos nomes começam com client-. Use um canal privado ou de presença autorizado para eventos originados pelo cliente.
Contagens de conexão
A contagem de conexões funciona em todos os tipos de canal. Ative Connection counting e Connection count events para receber bird:connection_count com o número de conexões inscritas.
Nomenclatura
Nomes de canal diferenciam maiúsculas de minúsculas e podem conter até 164 letras, dígitos e estes caracteres: _ - = @ , . ;. Por exemplo, Orders e orders identificam canais diferentes.
Mantenha dados sensíveis ou que identifiquem clientes fora dos nomes de canais públicos. orders não revela informações do cliente. orders-user-4821 expõe a existência do usuário 4821 para qualquer pessoa que possa acessar a aplicação.
Próximos passos
- Canais privados restringem assinaturas a clientes aprovados pelo seu backend.
- Publicação de eventos explica como publicar a partir do seu servidor e transmitir para vários canais.
- Visão geral do Realtime define canais, membros e conexões.
Recursos relacionados
Continue com a documentação, guias e exemplos sobre este tópico. Os recursos estão em inglês.
Explore a funcionalidadeRealtimeSiga o percurso de aprendizagemBuild your first integrationGuia de implementaçãoSend your first realtime event
Experimente na prática e obtenha um resumo de implementação