Как установить время ожидания NSMutableRequest менее чем через 240 секунд после установки тела?
Я создаю NSMutableRequest и добавляю данные в тело. Вот пример, как я это делаю:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:stringURL]
cachePolicy:NSURLRequestReloadIgnoringLocalCacheData
timeoutInterval:230.0];
NSLog(@"Time out interval: %f", request.timeoutInterval); >> Output: 230
[request setHTTPBody:[body dataUsingEncoding:NSUTF8StringEncoding]];
NSLog(@"Time out interval: %f", request.timeoutInterval); >> Output: 240
[request setTimeoutInterval:230];
NSLog(@"Time out interval: %f", request.timeoutInterval); >> Output: 240
Время ожидания запроса после его создания составляет 230. После того, как я установил тело, это 240. И после того, как я сбросил его на 230. Это все еще 240. Значение времени ожидания не изменится, если я не установлю его больше?
У кого-нибудь есть идеи, почему это происходит? Как сделать интервал ожидания менее 240 секунд?
1 ответ
На iOS вы просто не можете указать тайм-аут менее 240 с таким образом (потому что iPhone может работать при медленном соединении). Для более подробной информации проверьте: https://devforums.apple.com/message/108292
Если вам действительно нужно более короткое время ожидания, вы можете использовать NSTimer. В этом случае просто не забудьте использовать асинхронный запрос, который можно легко отменить.