Echtzeit und Offline
WebSocket-Hilfsfunktionen für Durable Objects und tabellenunabhängige Verträge für Offline-Replikate. Produktschemas, Zod-Strukturen und Fachregeln bleiben in der Anwendung.
Echtzeit mit Durable Objects
Der Haupteinstiegspunkt und /realtime stellen dieselben gezielten Echtzeit-Grundfunktionen bereit:
configureHibernationAutoResponse()konfiguriert Ping/Pong zur Laufzeit, ohne JavaScript aufzuwecken.upgradeHibernationWebSocket()ordnet den Zustand zu, bevor die WebSocket-Verbindung angenommen wird.broadcastHibernationWebSockets()sendet Nachrichten über die vongetWebSockets()wiederhergestellten Sockets.acknowledgeHibernationWebSocketClose()undcloseHibernationWebSocket()vereinheitlichen die Behandlung geschlossener Verbindungen.retryDurableObjectOperation()wiederholt nur Vorgänge bei Fehlern, die alsretryableund nicht alsoverloadedmarkiert sind. Erstellen Sie bei jedem Versuch innerhalb der Operation einen neuen Stub.invokeDurableObjectFetch()erhält den strukturierten Antwort-/Fehlervertrag für DO-Aufrufe.
Die WebSocket-Protokollparser prüfen die angebotenen Unterprotokolle vor dem Upgrade.
Verträge für Offline-Replikate
@rdlabo/workers-hono-kit/offline ist tabellenunabhängig. Produktschemas, Zod-Objekte, Positivlisten für öffentliche Spalten, Schema-Hashes und Fachregeln bleiben in der Anwendung.
defineRestDbMethodConverter() typisiert einen reinen Konverter zwischen REST-Methoden und Tabellen. Jede abgebildete Tabelle und Spalte ist erforderlich, auch Spalten mit zulässigen Nullwerten oder Standardwerten. Lassen Sie eine automatisch inkrementierte id im produktseitigen Tabellenschema weg, wenn eine Create-Methode sie bewusst nicht verwaltet.
Die Hilfsfunktionen für das Austauschformat überführen Werte in die kanonische Form:
toReplicaIsoDatetime()→ UTC ISO-8601toReplicaDateOnly()→YYYY-MM-DDodernulltoTinyIntFlag()/fromTinyIntFlag()→ Konvertierung zwischen booleschen Werten und tinyintreplicaNowIso(clock?)→ injizierbare aktuelle Uhrzeit
Die Journal-Hilfsfunktionen setzen Cursor-Abdeckung, Aufbewahrung, Mutationstransaktionen und das Verhalten beim Erstellen eines neuen Ausgangsstands durch. Die Kompatibilitätshilfsfunktionen für das Austauschformat ermöglichen es einer Anwendung, ausdrücklich freigegebene frühere Fingerprints zu akzeptieren und zugleich einen aktuellen kanonischen Fingerprint beizubehalten.
Nächster Schritt
Fahren Sie mit Tests und Betrieb fort oder lesen Sie unter Offline-API die Details zu den Exporten für Konverter und Austauschformate.