Ich schaute auf die diagram for a sync operation in Kinto Dokumente und ich habe Zweifel.Wie funktioniert die .sync() - Funktion?
Warum ist .sync() ein Pull.Then (Push) .Then (Pull) statt nur Pull.Then (Push)?
Wozu brauchen wir den letzten Zug?
Ich schaute auf die diagram for a sync operation in Kinto Dokumente und ich habe Zweifel.Wie funktioniert die .sync() - Funktion?
Warum ist .sync() ein Pull.Then (Push) .Then (Pull) statt nur Pull.Then (Push)?
Wozu brauchen wir den letzten Zug?
Wenn Sie Ihren Push tun, aktualisieren Sie die Datensätze last_modified
Wert, so dass Sie am Ende den neuen last_modified
Wert der Liste greifen müssen.
Möglicherweise haben Sie auch Änderungen an der Sammlung vorgenommen, während Sie Ihre Änderungen (von einem anderen Gerät) durchgeführt haben.
Ziehen nach dem Push können Sie den neuen last_modified
Wert, die Änderungen, die Sie vorgenommen haben, sowie die Änderungen, die in der Zwischenzeit vorgenommen wurden.
An diesem Punkt könnten Sie denken, dass das Ergreifen der Änderungen, die Sie vorgenommen haben, ein bisschen albern ist (weil Sie bereits wissen, was Sie gerade gedrückt haben). Es ist im Grunde the subject of this issue.
Die Idee ist, dass man auch mit dem last_modified
Wert Ihrer letzten Aktualisierung als If-Match
Header mit dem last_modified
Wert der Sammlung vor Änderungen als _since
Parameter und ohne alle Datensätze IDs zu ziehen versuchen Sie geändert haben .
In diesem Fall erhalten Sie die meiste Zeit eine 304 oder eine Liste von Änderungen, die von anderen gemacht wurden, während Sie Ihren Push machten.