2016-04-12 39 views
0

我想送WAV文件作为NSData的与AFNetworking 3.休息服务,我想出如何与AFMultipartFromData送,但我得到这样的 errorMessage = "Can Not Map Content-Type String multipart/form-data; boundary=Boundary+02588C5 To Media Type ";如何与AFNetworking 3发送的NSData不使用AFMultipartFormData

错误

当我与创建休息服务的人谈话时,他告诉我,我必须发送NSData而不是像AFMultipartFormData。我需要一些帮助,因为我找不到任何方式发送“只是”NSData。 我的代码如下;

NSURL *URL = [NSURL URLWithString:@"http://xxxMyService"]; 
NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; 

configuration.HTTPAdditionalHeaders = @{@"xx": @"yy ; zz"}; 

AFHTTPSessionManager *manager2 = [[AFHTTPSessionManager alloc] initWithBaseURL:URL sessionConfiguration:configuration]; 
manager2.responseSerializer = [AFJSONResponseSerializer serializer]; 

//I converted wav file to NSData 
NSData *data=[self setVoiceRecordToNSData]; 



[manager2 POST:@"http://xxxMyService" parameters:nil 
constructingBodyWithBlock:^(id<AFMultipartFormData> formData) 
{ 
[formData appendPartWithFileData:data name:@"data" fileName:@"Path.wav" mimeType:@"audio/wav"]; 
} 
progress:nil success:^(NSURLSessionTask *task, id responseObject 
{ NSLog(@"JSON: %@", responseObject);} 

failure:^(NSURLSessionTask *operation, NSError *error) { 
     NSLog(@"Error: %@", error); }]; 

回答

0

尝试POST

manager2.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"multipart/form-data"]; 
添加以下代码