6

我想将大视频从 iPhone 上传到网络服务器。我尝试使用以下代码。它适用于小文件,但是当我尝试上传大文件时它会崩溃。

代码:

NSMutableURLRequest *request = [NSMutableURLRequest
                                requestWithURL:[NSURL URLWithString:@"https://XXXXXXXXXXXXXXXX/submit.php"]];

NSData *webData = [NSData dataWithContentsOfURL:movieUrl];
NSString *postLength = [NSString stringWithFormat:@"%d", [webData length]];
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary];

---- added some HTTP headers here ----

[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request addValue:contentType forHTTPHeaderField: @"Content-Type"];

NSMutableData *postbody = [NSMutableData data];
[postbody appendData:[NSData dataWithData:webData]];
[request setHTTPBody:postbody];

NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];

经过研究,我有了一个想法,如果我在数据块中发送大文件,这将是可能的。解决方案1解决方案2

我还浏览了Stream Programming 苹果文档。 但不知道在哪里定义服务器 NSURL。将数据写入输出流后如何发送到服务器。

如果有人可以将我指向任何工作代码,那么我将能够更好地理解它。

怎么做?有什么想法吗?

4

0 回答 0