AFHTTPRequestOperation
喜欢在请求操作完成后调用GCD块。有没有办法让它调用方法选择器?我正在将我的应用从ASIHTTPRequest
转换为AFNetworking,而我的应用是围绕选择器而不是块构建的。
答案 0 :(得分:3)
您可以在完成块内调用您的选择器:
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:urlRequest
success:^(NSURLRequest *completedURLRequest, NSHTTPURLResponse *response, NSDictionary *json) {
[self callMyCustomSuccessMethod:json];
}
failure:^(NSURLRequest *errorRequest, NSHTTPURLResponse *response, NSError *error, id JSON) {
[self callMyCustomErrorMethod:error];
}];
[operation start];
答案 1 :(得分:2)
不确定AFHTTPRequestOperation
是否支持基于选择器的回调,但您可以轻松地将调用包装到块中的选择器中:
success:^(AFHTTPRequestOperation *operation, id responseObject) {
[myDelegate onSuccess:operation];
}
这适用于声明为:
的回调方法- (void)onSuccess:(AFHTTPRequestOperation*)operation;