使用AFNetworking上传音频文件

我正在尝试使用AFNetworking库将文件上传到Clypit。 我在这里看了他们的文档: https : //github.com/AFNetworking/AFNetworking

并配置我的代码上传一个音频文件,如下所示:

NSIndexPath *cellIndexPath = [self.tableView indexPathForCell:cell]; UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:cellIndexPath]; ICIRecordingCell *c = (ICIRecordingCell *)cell; NSString *fileName = c.title.text; NSURL *filePath = [NSURL fileURLWithPath:fileName]; NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:@"http://upload.clyp.it/upload" parameters:nil constructingBodyWithBlock:^(id formData) { [formData appendPartWithFileURL:filePath name:@"audioFile" fileName:@"audio.m4a" mimeType:@"audio/m4a" error:nil]; } error:nil]; AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; NSProgress *progress = nil; NSURLSessionUploadTask *uploadTask = [manager uploadTaskWithStreamedRequest:request progress:&progress completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) { if (error) { NSLog(@"Error: %@", error); } else { NSLog(@"%@ %@", response, responseObject); } } ]; [uploadTask resume]; 

但是响应对象或错误都没有被触发。 我甚至不确定这是否是我应该发送的请求类型。 Clypit Api表示他们接受如下请求:

上传音频文件。 接受的文件类型是mp3,ogg,m4a,wav,aiff,aif和3gpp。 无论上传时的文件类型如何,都会创建生成的mp3和ogg,并使其可用。 可以通过提供播放列表Id和播放列表UploadToken将音频文件添加到播放列表。 否则,将自动创建新的播放列表。 播放列表最多可包含20个音频文件。 音频文件的标题将设置为上载文件名称的标题。

参数:audioFile – 音频文件的二进制文件。 playlistId – 可选。 音频文件将添加到的播放列表。 如果指定了此值,则必须在请求中包含正确的playlistUploadToken。 如果未指定此值,将自动创建播放列表。 playlistUploadToken – 可选。 在您创建播放列表后给您。 将音频文件添加到现有播放列表时,必须提供此值。 订单 – 可选。 您希望此音频文件出现在播放列表中的位置。 description – 可选。 音频文件的描述。 允许的最大长度为420个字符。 经度 – 可选。 录制音频文件的位置的经度。 如果传入,则需要纬度。 值必须介于-15069和15069度之间。 纬度 – 可选。 录制音频文件的纬度。 如果传入,则需要经度。 值必须介于-90和90度之间。

上传是通过multipart / form-data POST完成的。 请考虑以下forms:

它将创建一个如下所示的请求:POST http://upload.clyp.it/upload HTTP / 1.1主机:upload.clyp.it连接:keep-alive内容类型:multipart / form-data; boundary = ————————— 21632794128452 Content-Length:5005 ————— ————– 21632794128452 Content-Disposition:form-data; NAME = “AUDIOFILE”; filename =“MyAudioFile.mp3”Content-Type:audio / mpeg(音频文件数据在这里)

我使用正确的方法吗? 提前致谢