所以我有一些像这样的代码:
@interface RequestHandler()
@property (nonatomic) NSInteger statusCode;
@end
@implementation RequestHandler
- (bool)sendRequest:(NSString *)surveyorId withData:(NSData *)requestData
{
[[NSURLConnection alloc] initWithRequest:request delegate:self startImmediately:true];
if (self.statusCode == 200)
{
return YES;
}
return NO;
}
显然,例程将if-else
在请求完成之前进入语句。因此,在检查之前self.statusCode
未在委托中正确设置。didReceiveResponse
这样做的最佳方法是什么?
我只是想添加另一个bool
将被设置的属性,connectionDidFinishLoading
然后循环直到设置该属性。完成后,它将检查self.statusCode
. 但是我认为这会阻塞线程不是吗?会和一个权利没有区别sendSynchronousRequest
吗?有没有办法在不将其放入后台线程的情况下做到这一点?