不知道您需要在本地存储多少数据,但如果您可以将其限制为 5mb,则可以使用json
而localStorage
不是本地数据库。
当您的应用程序请求数据时,一次返回所有数据,最后带有时间戳,并使用它巧妙地仅返回更新的数据。调用 likeyourhost.com/retrieveData
将返回所有数据并yourhost.com/retrieveData/timestampParam
仅返回时间戳后更新的数据。
返回类似:
{ "table1" : [{"col1":"data1","col2":"data2"},{"col1":"data3","col2":"data4"}],
"table2" : [{"col3":"data5","col4":"data6"},{"col3":"data5","col4":"data6"}],
"timestamp" : 1234567 } //this should be optimized for your needs, it's just a generic example.
当应用程序启动时,在执行任何其他操作之前,您将确保您的应用程序始终是最新的:
Check if the data is stored
If there isn't, or if the user is online or if the timestamp is too old, or you can perform any check you might need here
Retrieve the data again using the stored timestamp
Update the local data
Store the timestamp returned
If none of the above applies, the app is good to run
我在几个应用程序中使用了这种方法。我选择它而不是数据库是因为它更易于实现和维护。