у нас есть приложение для iOS, которое загружает изображения на сервер, используя составной пост. При использовании Wi-Fi все в порядке, но в 3G для больших изображений мы получаем ошибки сети.
На клиенте (iPhone):
Я получил
Домен = код NSURLErrorDomain = -1021 «поток тела запроса исчерпан»
на основе этот пост я попытался использовать библиотеку AFNetwork с этот метод, но все равно получил тот же точный результат.
На сервере:
Я настроил прокси для просмотра запроса, и я получаю
"Раструб сломанной трубы"
обычно после передачи 740Кб
Итак, что я делаю неправильно? Как я уже сказал, через Wi-Fi все работает нормально, и в 3G с небольшими изображениями тоже все в порядке.
Код версии AFNetwork (останавливает передачу после 600 - 800 кб для больших изображений):
AFHTTPClient *client = [[AFHTTPClient alloc] initWithBaseURL:self.baseURL];
request = [client multipartFormRequestWithMethod:@"POST"
path:nil
parameters:nil
constructingBodyWithBlock:^(id<AFMultipartFormData> formData)
{
for (NSString* partType in self.parts) {
if ([partType isEqualToString:@"jsonpart"]) {
[formData appendPartWithFormData:[self.parts objectForKey:partType] name:@"@json"];
}
else{ //is an image for sure
[formData appendPartWithFileData:[self.parts objectForKey:partType]
name:partType
fileName:[NSString stringWithFormat:@"%@-%d.jpg", partType, [partType hash]]
mimeType:@"image/jpeg"];
}
}
[formData throttleBandwidthWithPacketSize:kAFUploadStream3GSuggestedPacketSize delay:kAFUploadStream3GSuggestedDelay];
}];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[client enqueueHTTPRequestOperation:operation];
throttleBandwidthWithPacketSize:delay:
с более низкими значениями, чем рекомендуемые значения по умолчанию? - person Guillaume Algis   schedule 07.06.2013