//用AFN的AFHTTPSessionManager
AFHTTPSessionManager *sharedManager = [[AFHTTPSessionManager alloc]init];
sharedManager1.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript", @"text/html", @"text/plain",nil];
sharedManager1.requestSerializer.timeoutInterval =20;
NSString *url = [NSString stringWithFormat:@"你的url"];
[sharedManager POST:url parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) {
//把语音文件转成data
NSString *path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *amrPath = [path stringByAppendingString:@"/amrRecord.amr"];
NSData *data = [NSData dataWithContentsOfFile:amrPath];
//上传数据:FileData-->data name-->fileName(固定,和服务器一致) fileName-->你的语音文件名 mimeType-->我的语音文件type是audio/amr 如果你是图片可能为image/jpeg
[formData appendPartWithFileData:data name:@"fieldName" fileName:@"amrRecord.amr" mimeType:@"audio/amr"];
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nonnull responseObject) {
NSLog(@"success");
} failure:^(NSURLSessionDataTask * _Nonnull task, NSError * _Nonnull error) {
NSLog(@"%@",error);
}];
// sharedManager.requestSerializer = [AFHTTPRequestSerializer serializer];
// [sharedManager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];
// [sharedManager.requestSerializer setValue:@"text/html; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
iOS 用AFN上传一个文件(如语音)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1、首先,P2P模式,是一种纯线上模式,是纯粹的的P2P,在这种平台模式上纯粹进行信息匹配,帮助资金借贷双方更好的...