JavaScript SDK: Echtzeitreferenz
Jede Methode des Echtzeitdienstes und der Kanäle mit ihrer Signatur.
6 Min. gelesen·Ebene Referenz·Überarbeitet am 12.10.2026
Dieser englische Text wurde automatisch aus dem französischen Original generiert und wurde noch nicht überprüft.
Diese Seite wurde automatisch übersetzt. Maßgeblich ist die englische Version.
#
Klasse
RealtimeService
| Eigentum | Beschreibung |
|---|---|
get connectionState(): ConnectionState | Aktueller Verbindungsstatus. |
get isConnected(): boolean | Ob der WebSocket derzeit verbunden ist. |
| Methode | Beschreibung |
|---|---|
onStateChange(callback: (state: ConnectionState) => void): () => void | Achten Sie auf Änderungen des Verbindungsstatus. |
onError(callback: (err: RealtimeConnectionError) => void): () => void | Achten Sie auf Echtzeit-Verbindungstransportfehler. |
connect(): void | Stellen Sie sicher, dass die WebSocket-Verbindung geöffnet ist. |
refreshToken(token: string): void | Aktualisieren Sie das JWT-Token für eine bestehende Verbindung (keine Trennung). |
setAuth(token?: string): void | Definiert/aktualisiert explizit das Token, das für die Autorisierung privater und Broadcast-Kanäle verwendet wird (Parität @supabase/realtime-js setAuth). |
httpBroadcast(channel: string, event: string, payload?: Record<string, unknown>, options?: HttpBroadcastOptions): Promise<AuraResponse<null>> | Sendet einen Broadcast über HTTP (REST), ohne offene WebSocket-Verbindung (Parität @supabase/realtime-js). |
setAutoReconnect(enabled: boolean, maxAttempts?: number): void | Automatische Wiederverbindung aktivieren/deaktivieren (standardmäßig aktiviert). |
disconnect(): void | Trennen Sie den WebSocket und bereinigen Sie alle Kanäle. |
channel(name: string, options?: ChannelConfig): AuraChannel | Erstellen Sie einen Kanal nach Namen oder rufen Sie ihn ab. |
removeChannel(channel: string | AuraChannel): void | Entfernen Sie einen Kanal nach Namen oder nach AuraChannel-Instanz. |
getChannels(): AuraChannel[] | Aktive Kanäle auflisten. |
removeAllChannels(): void | Entfernen Sie alle Kanäle und Abonnements. |
#
Klasse
AuraChannel
Ein Echtzeitkanal mit Supabase-kompatibler verkettbarer API.
| Eigentum | Beschreibung |
|---|---|
readonly name: string | Kanalname, wie er an realtime.channel(name) übergeben wurde. |
get fullName(): string | Vollständiger Kanalname mit Projektpräfix (für Serverprotokoll) |
get isSubscribed(): boolean | Ob dieser Kanal abonniert wurde. |
| Methode | Beschreibung |
|---|---|
on<TRow = Record<string, unknown>>(type: 'postgres_changes', filter: PostgresChangesFilter & { event: 'INSERT'; }, callback: (payload: RealtimePostgresInsertPayload<TRow>) => void): AuraChannelSubscriptionon<TRow = Record<string, unknown>>(type: 'postgres_changes', filter: PostgresChangesFilter & { event: 'UPDATE'; }, callback: (payload: RealtimePostgresUpdatePayload<TRow>) => void): AuraChannelSubscriptionon<TRow = Record<string, unknown>>(type: 'postgres_changes', filter: PostgresChangesFilter & { event: 'DELETE'; }, callback: (payload: RealtimePostgresDeletePayload<TRow>) => void): AuraChannelSubscriptionon<TRow = Record<string, unknown>>(type: 'postgres_changes', filter: PostgresChangesFilter, callback: (payload: RealtimePostgresChangesPayload<TRow>) => void): AuraChannelSubscriptionon<TPayload = Record<string, unknown>>(type: 'broadcast', filter: BroadcastFilter, callback: (payload: RealtimeBroadcastEvent<TPayload>) => void): AuraChannelSubscriptionon(type: 'presence', filter: PresenceFilter, callback: (payload: PresenceState | RealtimeEvent | Record<string, unknown>) => void): AuraChannelSubscription | Registriert einen Listener für PostgreSQL (CDC)-Ereignisse mit INSERT-Filterung. |
off(type?: RealtimeListenType, filter?: PostgresChangesFilter | BroadcastFilter | PresenceFilter, callback?: (payload: unknown) => void): this | Entfernt einen oder mehrere Listener aus dem Kanal, ohne den Kanal zu schließen oder den WebSocket zu unterbrechen. |
subscribe(callback?: SubscribeCallback, timeoutMs?: number): this | Abonnieren Sie den Kanal. |
unsubscribe(): void | Abonnieren Sie den Kanal. |
send(message: BroadcastPayload): Promise<BroadcastSendStatus> | Sendet eine Broadcast-Nachricht auf dem Kanal. |
track(state: Record<string, unknown>): Promise<'ok' | 'error'> | Verfolgen Sie den Anwesenheitsstatus für diesen Client. |
untrack(): Promise<'ok' | 'error'> | Hören Sie auf, die Anwesenheit zu verfolgen. |
presenceState(): PresenceState | Rufen Sie den aktuellen Präsenzstatus für diesen Kanal ab. |
Generierte Seite
Diese Seite wird aus den Typdeklarationen und Kommentaren des SDK generiert, sodass sie nicht vom veröffentlichten Code abweichen kann. Ausgearbeitete Beispiele finden Sie in den Leitfäden.
Zuletzt aktualisiert · 12.10.2026