我已经有一个Web应用程序,我正在开发一个iPhone应用程序。我有一个关于在两者之间缓存/同步数据的基本问题。
因此,大概80%的iPhone应用程序都是从webapp读取(GETing)数据(它在统计数据上很重要,所以它可以让你访问你的统计数据等)。我是否应该在每次加载屏幕时重新加载此数据?如果是这样,则不需要同步/缓存,因为每次都会“新鲜”。但是,在大多数情况下,似乎我会毫无理由地将不必要的请求发送回Web服务器,因为数据通常不会发生变化。
我想在某种程度上在手机上本地缓存这些数据,但我不知道这是什么“最佳实践”。或者,如果我应该将iPhone上的sqlite数据库与来自Web应用程序的数据同步,并在导航控制器标题栏中提供“刷新”按钮以手动请求更新。
我不一定在寻找代码,只是或多或少地将计划放在一起。
连连呢?谢谢!
答案 0 :(得分:0)
这实际上取决于Web服务器上的数据更新频率。如果它不经常更新,那么我建议在iPhone上缓存数据。但是,如果您的Web服务器上有一系列活动并且访问最新信息被认为对项目成功至关重要,那么您将需要发送GET请求。
我不知道iPhone是否可以使用Comet,但如果支持,可以选择“推送”手机更新。
您还可以让手机定期检查服务器是否有更新。如果数据未更改,服务器可以返回状态代码304 Not Modified。这比在每个GET请求中提取实际数据要少。在这种情况下,如果未返回304,则只会提取新数据。