Ios WebAPI返回时更新内容的适当方法

Ios WebAPI返回时更新内容的适当方法,ios,objective-c,afnetworking,Ios,Objective C,Afnetworking,我有一个WebAPI类,它处理我项目中的所有网络通信和下载。我的项目包含集合视图和表视图,下载完成后会更新这些视图 我处理这件事的方法很难看 我将对集合视图/表视图的引用传递给WepAPI.m中的方法。 每当下载完成时,我都会使用引用将新对象插入到我的视图中,并发送重新加载消息 这是路吗?我应该使用KVO还是其他方法 我正在使用AFNetworking框架来处理我的web通信一个简单的模式应该是使用两个单例: ConnectionManager,处理身份验证、超时、解析、 数据管理器,它要求C

我有一个WebAPI类,它处理我项目中的所有网络通信和下载。我的项目包含集合视图和表视图,下载完成后会更新这些视图

我处理这件事的方法很难看

我将对集合视图/表视图的引用传递给WepAPI.m中的方法。 每当下载完成时,我都会使用引用将新对象插入到我的视图中,并发送重新加载消息

这是路吗?我应该使用KVO还是其他方法


我正在使用AFNetworking框架来处理我的web通信

一个简单的模式应该是使用两个单例:

  • ConnectionManager,处理身份验证、超时、解析、
  • 数据管理器,它要求ConnectionManager获取端点并存储解析结果
然后,您可以使用KVO(或NSNotifications)来侦听对DataManager单例的任何更新

这种方法非常简单,并且为涉及的每个组件提供了相当多的可重用性。

我会使用块

例如:(在WebAPI.h中)

使用单例,以便下载程序保留在内存中。(把这个放到你的WebAPI.m中)

}

打电话是这样的:

[[WebAPI sharedInstance] getSomeStuffWithCompletion: ^ (id someStuff) {
    //Make changes to your views here
}
这样可以确保您所做的视图更改在相应的视图控制器中完成

+ (id)sharedInstance {
static dispatch_once_t once;
static id sharedInstance;
dispatch_once(&once, ^{
    sharedInstance = [[self alloc] init];
});
return sharedInstance;
[[WebAPI sharedInstance] getSomeStuffWithCompletion: ^ (id someStuff) {
    //Make changes to your views here
}