Ho creato una semplice web app, che funziona completamente offline: tutti i dati sono salvati in localStorage di HTML5. Ora voglio che i dati vengano sincronizzati con il server, in modo che l'utente possa utilizzare l'app su più dispositivi contemporaneamente.
Quello che ho fatto finora è:
- Per ogni operazione eseguita dall'utente, viene aggiunta una voce di registro.
- Quando l'utente è online, tutti i registri vengono trasferiti da localStorage a PHP tramite AJAX.
- Le modifiche corrispondenti vengono apportate nel database SQL.
- Tutti i registri vengono eliminati da localStorage.
Quindi, tutti i dati localStorage vengono sottoposti a "backup" sul server in modo corretto.
In ogni caso, le modifiche apportate da un dispositivo non si riflettono sull'altro dispositivo e viceversa, per fare ciò, dovremmo ottenere alcuni dati da SQL a localStorage.
Ora, la mia domanda è su quale sarà il modo appropriato e migliore per farlo?
Dopo i quattro passaggi precedenti, faccio a
- Cancella tutti i dati localStorage e salva i dati SQL in localStorage.
- Tieni un registro delle modifiche apportate nel database e fallo sul localStorage.
- Qualsiasi altro approccio.
Inoltre, che dire dei timestamp? Cosa succede se ci sono conflitti?