NSInvalidArgumentException使用AFNetworking将音频发送到服务器

时间:2014-06-14 14:03:53

标签: php ios objective-c afnetworking multipartform-data

我正在尝试使用AFNetworking将音频文件发送到我的服务器,但到目前为止还没有成功。这是我设备上的代码:

self.manager = [AFHTTPRequestOperationManager manager];
[self.manager POST:@"upload.php"
    parameters:@{}
    constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
        [formData appendPartWithFileData:self.output.soundData name:@"audio" fileName:@"recordedSound.m4a" mimeType:@"audio/m4a"];
    } success:^(AFHTTPRequestOperation *operation, id responseObject) {
        NSLog(@"JSON: %@", responseObject);
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"Error: %@", error);
    }];

这是我在服务器上的代码:

<?php

define("WWW_ROOT",dirname(dirname(__FILE__)).DIRECTORY_SEPARATOR);

if (!empty($_FILES)) {
    $target_path = WWW_ROOT ."uploads/";
    $target_path = $target_path . basename( $_FILES['audio']['name']); 
    move_uploaded_file($_FILES['audio']['tmp_name'], $target_path);
} 

每当我尝试将数据发送到服务器时,都会收到此错误:

  

*由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'* -streamStatus仅为抽象类定义。定义 - [AFMultipartBodyStream streamStatus]!'

1 个答案:

答案 0 :(得分:2)

同样这里只是将AFNetworking更新到最新版本,一切都应该顺利进行。