//用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,在这种平台模式上纯粹进行信息匹配,帮助资金借贷双方更好的...