Я использую этот метод ниже, чтобы получить данные из URL, но я хочу, чтобы сделать его возвращает ошибку, если statusCode
не равен 200.сделать метод Objective-C вернуть ничего
+ (NSData *)getData:(NSString *) url {
NSURL *urlNS = [[NSURL alloc] initWithString:url];
NSURLRequest * urlRequest = [NSURLRequest requestWithURL:urlNS];
NSError * error = nil;
NSHTTPURLResponse* urlResponse = nil;
NSData * data = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&urlResponse error:&error];
int statusCode = [urlResponse statusCode];
if(statusCode == 200) {
return data;
} else {
//return the error object which is not NSData or which is converted to NSData
}
}
Мои вопрос
могу ли я каким-то образом вернуть моя ошибка (это будет переменная ошибки определена выше) в не объект NSData или я могу возможно преобразовать свою ошибку в NSData?
Не префикс метода 'get'; который зарезервирован для особого случая, что это не так. 'downloadData: error:' будет казаться более подходящим. – bbum
Sharp eyes, как обычно, @bbum – matt