有没有办法来缓解连接到
问题描述:
我是相当新的IOS编程 服务器所以我甚至不知道怎么问究竟 但我会解释这个问题 我创造了主要依靠从获取数据的应用有时服务器的json的大小太大 有没有办法在设备上保存json,而不是带来,但最近的数据或只能工作与服务器同步 该程序是客观的c和我使用网络化 后端是ASP.net -mvc有没有办法来缓解连接到
答
处理此用例的一般方法是,您总是将latestItemId/latestItemTimestamp存储在您的应用程序中,并且每次需要获取ne时w数据,您可以使用此信息拨打服务器电话。在您的服务器端点中,您使用此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)的应用程序存储和/或使用NSUserDefaults
储存。 NSUserDefaults.standardUserDefaults()
方法可能有帮助(在Swift中)