Ich bin nur auf der Suche nach Ideen/Anregungen hier; Ich frage nicht nach einer vollständigen Lösung (obwohl, wenn Sie eine haben, würde ich mich freuen, es zu sehen)Finden Sie, was geändert wurde und laden Sie nur Änderungen
Ich versuche, einen Weg zu finden, um nur Änderungen an Text hochzuladen. Es wird höchstwahrscheinlich als cloudbasierte Anwendung verwendet, die auf jQuery und HTML läuft, wobei ein PHP-Server das Backend ausführt.
Zum Beispiel, wenn ich Text haben wie
asdfghjklasdfghjkl
Und ich es ändern zu
asdfghjklXasdfghjkl
Ich will nicht die ganze Sache zu laden haben (der Text kann ziemlich groß werden add an X to the 8th position
zum Beispiel so etwas wie 8,X
an den Server könnte bedeuten gesendet
Oder D8,3
könnte bedeuten: go to position 8 and delete the previous 3 terms
Wenn jedoch ein einziger Antrag auf dem Weg zu dem Server beschädigt ist, das gesamte Dokument beschädigt werden könnte, da die Positionen geändert werden würden. Ein einfacher Hash könnte Korruption erkennen, aber wie würde man dann von der Korruption erholen? Der Client wird alle Daten haben, aber die Daten sind möglicherweise sehr groß und es ist unwahrscheinlich, dass sie hochgeladen werden können.
Also danke fürs Durchlesen. Hier ist eine kurze Zusammenfassung dessen, was benötigt Vorschläge
- Ändern/Modification Erkennung
- Methode, um die Änderungen
- Erholung von Korruption zu kommunizieren
- Alles andere, was verbessert werden muss
interessante Frage .. Sie müssen mit Nebenläufigkeit Probleme zu tun haben. Vielleicht senden Sie Tastenanschläge oder Speichern von Änderungen an den Server spucken in festen Zeitintervallen mit einer Revisionsnummer zu überprüfen. Ein Problem besteht darin, dass Sie, wenn der Text (sehr) groß ist, Probleme beim Umgang mit dem Client haben. – Hamish
@Hamish: Um Ihr Problem anzugehen, werde ich jQuery die Bildschirmmaße des Geräts erhalten, und der Server wird genug Text senden, um 3 mal diesen Bildschirm zu füllen. Während der Benutzer scrollt, kann der Rest des Textes gestreamt werden. Ich mag Ihren Vorschlag bezüglich der Zeit/Revisionen. Das werde ich mir merken. – Kranu
es sei denn, * Ihre * Bildschirme haben eine gigantische Pixelauflösung, die niemand sonst hat, 3 Bildschirme voller Text sind nicht so viele Daten zu verarbeiten. Ich denke ungefähr 50-100kb, wo ist das Problem, das ganze Ding zum Server zu schicken? – joni