#ios #objective-c #client-server
#iOS #objective-c #клиент-сервер
Вопрос:
Я разрабатываю приложение для iOS, которое должно отправлять данные, собранные датчиками, на сервер. Однако я могу отправлять данные только в течение 1 минуты, после чего я получаю следующую ошибку:
submit error = Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={NSUnderlyingError=0x1469a9820 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "The request timed out." UserInfo={NSErrorFailingURLStringKey=http://xyz/abc/, NSErrorFailingURLKey=http://xyz/abc/, _kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4, NSLocalizedDescription=The request timed out.}}, NSErrorFailingURLStringKey=http://xyz/abc/, NSErrorFailingURLKey=http://xyz/abc/, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-2102, NSLocalizedDescription=The request timed out.}
Вот фрагмент кода, который пытается отправить данные:
-(void)postData:(NSString*)postTo withParameters:(NSDictionary*)parameters withHeaders:(NSDictionary*)headers{
[[UNIRest post:^(UNISimpleRequest *request) {
[request setUrl:[NSString stringWithFormat:@"%@%@", BASE_URL, postTo]];
[request setHeaders:headers];
[request setParameters:parameters];
}] asJsonAsync:^(UNIHTTPJsonResponse* response, NSError *error) {
if (error) {
NSLog(@"submit error = %@", error);
return;
}
else
{
NSLog(@"submit to %@ success", [NSString stringWithFormat:@"%@%@/", BASE_URL, postTo]);
}
}];
}
NSDictionary* headers = @{@"accept": @"application/json"};
for (int i = 0; i < sensorDataLength; i ) {
SensorData *Obj = [SensorArray objectAtIndex:i];
NSDictionary* parameters = @{@"x": [NSString stringWithFormat:@"%f", Obj.xAxis], @"y": [NSString stringWithFormat:@"%f", Obj.yAxis]};
[self postData:@"abc/" withParameters:parameters withHeaders:headers];
}
Как я могу увеличить интервал ожидания до 60 секунд?
Любая помощь была бы очень признательна.
Ответ №1:
Из документации:
Тайм-аут
Вы можете установить пользовательское значение тайм-аута (в секундах):
[UNIRest timeout:2];
По умолчанию время ожидания равно 60.