Aggiornamenti live
Apri un WebSocket sullo stesso host dell'API e Fóir avvisa la tua applicazione quando un record cambia. Ogni evento porta l'id di ciò che è cambiato, e l'SDK può trasformarlo in un aggiornamento della cache delle tue query.
Un socket, la stessa chiave
Le subscription usano il protocollo graphql-ws sull'host dell'API, con la stessa chiave API delle tue query e mutation. Le credenziali vengono inviate all'apertura della connessione: la chiave e, quando c'è, il token di accesso di un utente autenticato. Un socket regge fino a 32 subscription live.
Cosa puoi sottoscrivere
recordChanged segnala le modifiche ai record di un modello. Altre subscription riguardano le proprie notifiche, l'avanzamento dei job in background e l'esecuzione di una singola operazione. Osservare un modello richiede lo stesso permesso di lettura necessario per leggerlo, e su un modello i cui record sono privati per ogni utente il flusso è filtrato sui record del chiamante.
Gli eventi portano gli id
Un evento di record indica l'azione (created, updated, published, unpublished o deleted), l'id del record e il suo modello. Identifica cosa è cambiato e lascia fuori il contenuto, quindi leggi il record tramite la normale API. Ogni evento ha anche un numero di sequenza, per progetto e in ordine di commit. Passa il più alto che hai applicato quando ti sottoscrivi e il server riproduce ciò che ti sei perso dal suo log durevole prima di continuare in diretta.
Il client di subscription dell'SDK
L'SDK tipizzato dà a ogni modello un metodo onChange che restituisce un handle per annullare la sottoscrizione. Apre il socket alla prima subscription e lo chiude quando termina l'ultima. Se la connessione cade, si riconnette con exponential backoff e rinvia le subscription live.
Il modulo live
@foir/sdk/live collega il flusso delle modifiche alla tua cache delle query, e ha un binding per React. Una modifica rilegge solo le query che contenevano quel record, un'eliminazione viene applicata in memoria e una creazione viene segnalata come conteggio. Scegli tu modello per modello.
Leggi i dettagli
La guida alle subscription tratta l'endpoint, ogni subscription e i suoi campi evento, e il modulo live.