Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift缓存JSON请求_Ios_Swift_Caching_Cache Control - Fatal编程技术网

Ios Swift缓存JSON请求

Ios Swift缓存JSON请求,ios,swift,caching,cache-control,Ios,Swift,Caching,Cache Control,我有一个IOS应用程序,可以从我的后端获取数据。我正在使用Alamofire库,我已经成功下载并解析了JSON数据。 现在我想通过向我的应用程序添加缓存数据来增强用户体验,这是我第一次使用它,在阅读了许多文章后,我对如何使用缓存策略感到困惑。 所有我需要的是得到以下查询的正确想法 1.在线连接(假设以下情况): A-用户第一次打开我的应用->应用程序将下载数据并显示在mainview->用户导航到另一个视图->现在如果我缓存了响应,当用户导航回mainview时,如何告诉应用程序使用缓存的数据而

我有一个IOS应用程序,可以从我的后端获取数据。我正在使用Alamofire库,我已经成功下载并解析了JSON数据。 现在我想通过向我的应用程序添加缓存数据来增强用户体验,这是我第一次使用它,在阅读了许多文章后,我对如何使用缓存策略感到困惑。 所有我需要的是得到以下查询的正确想法

1.在线连接(假设以下情况):

A-用户第一次打开我的应用->应用程序将下载数据并显示在mainview->用户导航到另一个视图->现在如果我缓存了响应,当用户导航回mainview时,如何告诉应用程序使用缓存的数据而不是发出新的请求

B-对于A的相同场景,如果第一个响应从后端检索到前10个对象,并且该响应被缓存->其他应用程序用户向后端发送一些新帖子(例如20篇新帖子)->现在如何告诉我的应用程序服务器上有新的数据,并发出新的请求,而不依赖缓存的数据

2.离线连接: 在我看来,我认为上述场景的情况是相同的->无连接->转到缓存

连接成功->(与方案B相同)->检查新数据->如果存在->提出新请求->无新数据->转到缓存


我希望有人能帮我解决这个问题

您的服务器响应是否发送了正确的缓存头?如果您的响应指示为ETag缓存数据的时间并使用ETag,则应该自动管理该消息。好的,那么整个想法是关于服务器缓存头的?对吧?对。如果需要,您仍然可以手动缓存,或者使用类似AwesomeCache的东西。但只要你的服务器使用正确的头,它就会自动缓存。我会尝试并返回结果