我正在创建一个应用程序,用户可以使用该应用程序录制声音并将其发送到我的服务器。第一部分完美运作。我可以录制和播放声音。但问题是,当我尝试将这个录制结果的wav文件上传到我的服务器时,它不会接受超过2分钟且发送几秒钟(约2 MB)小文件的任何内容。处理得当。任何大于这个导致发送请求但不附加文件,或附加文件但服务器无法读取它。第一个对我来说似乎更有可能。我的Objective-c代码如下:
目标-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.
非常感谢任何想法或解决方案!
答案 0 :(得分:1)
您可能希望使用异步传输。然后,您可以将一些日志记录或UIProgressBar挂钩到ASIFormDataRequest的progressDelegate属性,以便ASI可以报告其上载进度,这样您就可以看到它是否正在从应用程序端出来。
但是,我怀疑你是否违反了服务器上的“最大上传大小”配置。你把它发送给你写的代码吗?我主要在服务器端使用PHP,而且我知道超出php.ini文件中指定的特定大小,它只是barfs。答案 1 :(得分:1)
PHP的上传限制受一些设置控制:
upload_max_filesize
memory_limit
post_max_size
还有Web服务器限制,比如Apache的LimitRequestBody,可以在PHP之前很久就开始使用。