【发布时间】:2015-07-21 05:18:02
【问题描述】:
较新的RestKit 0.2.x 很棒,但我无法从RKHTTPRequestOperation : AFHTTPRequestOperation : AFURLConnectionOperation<NSURLConnectionDataDelegate> 类中找到任何挂钩来扩展它对NSURLConnectionDataDelegate 的实现,我认为这对于实现下载进度HUD 是非常必要的。
我希望 这样做是这样的:
RKObjectRequestOperation *operation =
[[RKObjectManager sharedManager]
appropriateObjectRequestOperationWithObject:nil
method:RKRequestMethodGET path:_requestPath
parameters:_requestParameters];
operation.RKHTTPRequestOperation.onDidReceiveResponse = ^(void)(NSURLConnection *connection, NSURLResponse *response) {
// store response or at least its estimated length
_response = response; //OR AT LEAST
// show progress hud at 0 / length = 0%
_estimated = response.expectedContentLength;
[SVProgressHUD showProgress:0.0f];
}
operation.RKHTTPRequestOperation.onDidReceiveData = ^(void)(NSURLConnection *connection, NSData *data) {
// show updated progress
[_myData appendData:data];
[SVProgressHUD showProgress:((float)myData.length/_estimated * 100)];
}
所以,我想知道:
是否有一个钩子/协议/块/选择器/我不知道
RestKit或AFNetworking提供了使这成为可能? (我看到的只有success和failure,它们都来不及使用)。如果不是,什么是最合适、可维护和安全的方式来调配/覆盖/修改
NSURLConnectionDataDelegate回调以将它们公开给我的客户?
【问题讨论】:
-
你在下载什么大到需要进度提示?
-
没什么特别的,但我想要它:)
标签: nsurlconnection restkit restkit-0.20 nsurlconnectiondelegate