有没有办法解除与服务器的连接

Is there a way to relieve connect to the server

我对 IOS 编程还很陌生 所以我什至不知道怎么问 但我会解释这个问题 我创建了一个主要依赖于从服务器获取数据的应用程序,有时 json 的大小太大 有没有办法在设备上保存json不带,但最近的数据还是只工作与服务器同步 该程序是 objective c,我使用 afnetworking 后端是 ASP.net-mvc

处理此用例的一般方法是,您始终将 latestItemId/latestItemTimestamp 存储在您的应用程序中,并且每次您需要获取新数据时,您都会使用此信息调用服务器。在您的服务器端点中,您使用此 id/timestamp 并在此 id/timestamp 之后获取数据。

当应用程序第一次请求api端点时,latestItemId的值为0。每次获取数据后,您不断更新它。因为你要求服务器只在特定的id之后才给出数据,所以你只会得到需要的数据(最新数据)

例如你的服务器代码可能看起来像(使用 EF 和 LINQ)(下面的代码是给你一个想法。我没有检查编译错误

public List<string> Messages(int fromId=0,int top=20)
{
   var d = yourDbContext.Messages
                        .Where(x=>x.Id>fromId)
                        .OrderBy(f=>f.InsertTime)
                        .Take(top)
                        .Select(c=>c.MessageBody)
                        .ToList();
   return d;
}

从 IOS 客户端应用程序端,您可以将数据 (latestId) 保存在应用程序内存中 and/or 使用 NSUserDefaults 来存储它。 NSUserDefaults.standardUserDefaults() 方法可能会有帮助(在 Swift 中)