6 ms·
I think order does matter - lets say a user types in 'hello' and then saves the note, then quickly changes his/her mind and types in 'hello world' and saves the
by morris 19y ago
I think order does matter - lets say a user types in 'hello' and then saves the note, then quickly changes his/her mind and types in 'hello world' and saves the note. Now the backend will save the version of the note which it receives last, which could be 'hello' depending on network lag.
- palish 19y agoIn that instance, you'd abort the previous request, create a new XmlHTTPRequest object (important step), then re-issue the request.
- morris 19y agoHow does one abort the previous request unless a queue is being kept track of? Also, there could have been a few other requests made between the first save and the second save. Its definitely possible I'm just not understanding how XMLHTTPRequest objects work - please do explain if you think that is the case. Also - I'm not necessarily using XMLHTTPRequest, I'm leaning towards dynamic scripting as my site will need this widget to run across several different subdomains - dynamic scripting doesn't have a lot of the nice status functionality that XMLHTTPRequest does...
- palish 19y agoOkay, here's an alternate method. When a user needs to save their note If the note is already saving Set note.saveAgain = true else Start the process of saving the note When the note has saved If note.saveAgain == true Set note.saveAgain = false Start the process of saving the note again That doesn't require a queue. It also only saves the most up to date version.
- cpinto 19y agoYou should probably use some kind of versioning so that when you receive version 123 and the version in the database is 121, you won't commit 123 until you receive #122. If the user deletes the note and the server receives the delete request before other modification deltas, simply ignore the deltas that arrive after the delete command. In my opinion it's a lot more simple to solve this kind of problems on the server side of a web application.