iOS не успява да качи локален wav файл на моя сървър

Създавам приложение, с което потребителят може да записва звук и да го изпраща на моя сървър. Първата част работи перфектно. Мога да записвам и възпроизвеждам звука. Проблемът обаче е, че когато се опитам да кача wav файла, който е резултат от този запис, на моя сървър, той няма да приеме нищо, което е по-дълго от 2 минути и няколко секунди (около 2 MB), изпращат се по-малки файлове и обработени правилно. Всяко по-голямо от това води до изпращане на заявката, но без прикачване на файла, или прикачване на файла, но сървърът не може да го прочете. Първото ще ми се стори по-вероятно. Моят Objective-c код е както следва:

КОД OBJECTIVE-C

NSString *theUrl = @"http://www.myserver.nl";
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:theUrl]];

[request setFile:[soundFileURL path] forKey:@"mainfile"]; //The file gets added
[request startSynchronous]; //Request is being sent.

Всякакви мисли или решения ще бъдат много оценени!


person Manuel    schedule 11.07.2011    source източник


Отговори (2)


Ограниченията за качване на PHP се управляват от няколко настройки:

upload_max_filesize
memory_limit
post_max_size

Има и ограничения за уеб сървър, като LimitRequestBody на Apache, които могат да изхвърлят много преди това на PHP.

person Marc B    schedule 11.07.2011

Вероятно искате да използвате асинхронен трансфер. След това можете да закачите някакво регистриране или UIProgressBar към свойството progressDelegate на ASIFormDataRequest, така че ASI да може да докладва напредъка си при качване, така че да можете да видите дали излиза от страната на приложението.

Подозрението ми обаче е, че се разминавате с конфигурацията "максимален размер на качване" на сървъра. Изпращате ли това до кода, който сте написали? Използвам PHP най-вече от страната на сървъра и знам, че над определен размер, посочен във файла php.ini, той просто пречи.

person Dan Ray    schedule 11.07.2011
comment
Максималният размер за качване го оправи, тъпо от моя страна да не се сетя за това... Извинете за куция въпрос и благодаря за бързия отговор! :) - person Manuel; 11.07.2011
comment
Всъщност отговорът, даден от Marc B, е „по-правилен“, тъй като post_max_size и memory_limit също трябваше да бъдат увеличени. Ще му отговоря най-добре :) - person Manuel; 11.07.2011
comment
@dragon112 Fiiiiiine! ;-) Все още препоръчвам асинхронни връзки и не само защото можете да наблюдавате напредъка им. - person Dan Ray; 11.07.2011
comment
Знам, планирам да го променя на асинхронен. Това е само тест :) - person Manuel; 12.07.2011