afnetwork如何实现同步请求
在用afnetwork时希望网络返回的结果同步,这个如何实现呢?
[self.requestManager
POST:url
parameters:params
success:^(AFHTTPRequestOperation *operation, id responseObject) {
self.responseObject = responseObject;
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
[self.responseObject setObject:error forKey:@"error"];
}];
NSLog(@"希望这里显示出结果%@", self.responseObject);//这里现在输出为nil;
卯花之佐久夜姬
9 years, 9 months ago
Answers
可以参考 这个链接 。
这里 AFNetworking 的作者给出的答案是:简单地说,不要用同步请求。
如果一定要用的话,可以用
-[NSURLConnection sendSynchronousRequest:returningResponse:error]
。
你的问题可以简单改为:
[self.requestManager
POST:url
parameters:params
success:^(AFHTTPRequestOperation *operation, id responseObject) {
self.responseObject = responseObject;
NSLog(@"希望这里显示出结果%@", self.responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
[self.responseObject setObject:error forKey:@"error"];
}];
霜之不高興
answered 9 years, 9 months ago