【问题标题】:AFNetworking to run synchronouslyAFNetworking 同步运行
【发布时间】:2012-11-25 23:02:33
【问题描述】:

我正在异步运行 AFNetworking。请参阅下面的代码。

我想同步运行它来下载包(我需要获取人们可以选择的服务列表)。我该怎么做?

谢谢。

 NSMutableURLRequest *apiRequest =
[self multipartFormRequestWithMethod:@"POST"
                                path: pathstr
                          parameters: params
           constructingBodyWithBlock: ^(id <AFMultipartFormData>formData)
           {
               //TODO: attach file if needed
           }];

AFJSONRequestOperation* operation = [[AFJSONRequestOperation alloc] initWithRequest: apiRequest];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
    //success!
    completionBlock(responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    //failure :(

    NSLog(@"%@", error);
    completionBlock([NSDictionary dictionaryWithObject:[error localizedDescription] forKey:@"error"]);
}];

[operation start];

【问题讨论】:

标签: ios cocoa-touch ios5 ios4 afnetworking


【解决方案1】:

我想同步运行它来下载包(我需要获取人们可以选择的服务列表)。我该怎么做?

AFNetworking 不支持同步操作。

另一方面,您几乎不需要在 UI 线程上进行同步操作,因为 UI 会变得无响应。

(我需要获取人们可以选择的服务列表)

您可以做的是在异步操作进行时显示一些 UI 提示,表明正在下载服务列表。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 1970-01-01
    相关资源
    最近更新 更多