Öffentliche Channels
Ein Realtime-Channel ist öffentlich, sofern sein Name nicht mit private- oder presence- beginnt. Ein Client braucht nur den öffentlichen App-Key, um sich zu abonnieren – behandeln Sie den Channel also als lesbar für jeden, der diesen Key besitzt.
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)
}Öffentliche Channels erfordern keine Registrierung und keinen Autorisierungsendpunkt. Ein Channel existiert, solange mindestens eine Verbindung abonniert ist, und verschwindet, wenn die letzte Verbindung ihn verlässt.
Wann Sie einen öffentlichen Channel verwenden
Verwenden Sie öffentliche Channels für Daten, die jeder Besucher lesen darf, etwa Build-Ergebnisse, Live-Spielstände, Fluginformationen, Zuschauerzahlen oder Statusseiten-Vorfälle.
Verwenden Sie einen privaten Channel für Daten, die auf einen Benutzer, ein Konto oder einen Mandanten beschränkt sind. Abonnements öffentlicher Channels erfordern keine Autorisierung, sodass ein Client jeden Channel-Namen ausprobieren kann, den er erraten oder zusammensetzen kann.
Einschränkungen öffentlicher Channels
- Mitglieder-Identität: Öffentliche Channels erfassen keine Mitglieder und stellen keine Mitgliederliste bereit. Die Events bird:member_added und bird:member_removed gehören zu Presence-Channels.
- Client-Events: Öffentliche Channels lehnen Events ab, deren Namen mit client- beginnen. Verwenden Sie einen autorisierten privaten oder Presence-Channel für vom Client ausgelöste Events.
Verbindungszähler
Die Verbindungszählung funktioniert bei jedem Channel-Typ. Aktivieren Sie Connection counting und Connection count events, um bird:connection_count mit der Anzahl abonnierter Verbindungen zu empfangen.
Benennung
Channel-Namen unterscheiden Groß- und Kleinschreibung und können bis zu 164 Buchstaben, Ziffern und folgende Zeichen enthalten: _ - = @ , . ;. Zum Beispiel identifizieren Orders und orders unterschiedliche Channels.
Halten Sie sensible oder kundenidentifizierende Daten aus öffentlichen Channel-Namen heraus. orders gibt keine Kundeninformationen preis. orders-user-4821 offenbart die Existenz von Benutzer 4821 gegenüber jedem, der auf die Anwendung zugreifen kann.
Nächste Schritte
- Private Channels beschränken Abonnements auf Clients, die von Ihrem Backend genehmigt wurden.
- Events veröffentlichen erklärt, wie Sie von Ihrem Server aus veröffentlichen und an mehrere Channels gleichzeitig senden.
- Realtime-Übersicht definiert Channels, Mitglieder und Verbindungen.
Verwandte Ressourcen
Weiter mit der Dokumentation, Anleitungen und Beispielen zu diesem Thema. Die Ressourcen sind auf Englisch.
Die Funktion erkundenRealtimeDem Lernpfad folgenBuild your first integrationImplementierungsleitfadenSend your first realtime event
Übung ausprobieren und ein Implementierungs-Briefing erhalten