AFNetworking multipart upload
+ (NSDictionary*)parametersOfUser:(User*)user{ if (user) { NSMutableDictionary *returnDict = [NSMutableDictionary dictionaryWithCapacity:0]; if (user.userId && [user.userId length]) { [returnDict setObject:[user.userId urlEncoded] forKey:@"userId"]; } if (user.userName && [user.userName length]) { [returnDict setObject:[user.userName urlEncoded] forKey:@"userName"]; } if (user.phone && [user.phone length]) { [returnDict setObject:[user.phone urlEncoded] forKey:@"phone"]; } if (user.email && [user.email length]) { [returnDict setObject:[user.email urlEncoded] forKey:@"email"]; } [returnDict setObject:[user.deviceId urlEncoded] forKey:@"deviceId"]; [returnDict setObject:[user.deviceType urlEncoded] forKey:@"deviceType"]; [returnDict setObject:[user.osName urlEncoded] forKey:@"osName"]; [returnDict setObject:[user.osVersion urlEncoded] forKey:@"osVersion"]; if (user.pinCodeHash && [user.pinCodeHash length]) { [returnDict setObject:[user.pinCodeHash urlEncoded] forKey:@"pinCodeHash"]; } if (user.publicKey && [user.publicKey length]) { [returnDict setObject:[user.publicKey urlEncoded] forKey:@"publicKey"]; } return returnDict; }return nil; }
AFHTTPClient *client = [[AFHTTPClient alloc] initWithBaseURL:baseURL]; NSMutableURLRequest *afRequest = [client multipartFormRequestWithMethod:@"POST" path:path parameters:[User parametersOfUser:user] constructingBodyWithBlock:^(id<AFMultipartFormData> formData) { /** *@discussion If we use multipart, we should only have two parts, one for picture (probably type is image/png) and one for other parameters (type is x-www-form-urlencoded) */ //header /* NSString *bodyString = [User postBodyStringWithUser:user withPostType:PostTypeMultiPart]; NSMutableDictionary *headers = [NSMutableDictionary dictionaryWithObjectsAndKeys: @"application/x-www-form-urlencoded; charset=UTF-8",@"Content-Type", [NSString stringWithFormat:@"form-data; name=\"%@\"", @"usr_info"],@"Content-Disposition" , nil]; [formData appendPartWithHeaders:headers body:[bodyString dataUsingEncoding:NSUTF8StringEncoding]]; */ //picture part if (user.picture2) { NSData *data = UIImagePNGRepresentation(user.picture2); //NSLog(@"=====data length is %i",[data length]); [formData appendPartWithFileData:data name:@"picture2" fileName:nil mimeType:@"image/*"]; } }];
相关推荐
倾城一屁博妹一笑 2020-06-12
crypond 2019-12-04
陈凯昂 2013-07-17
yuj00 2015-05-14
zoutian00 2015-05-12
wangzhen 2018-12-24
crypond 2018-08-23
crypond 2019-07-01
zuojinmin 2019-06-26
大黑 2019-06-26
86344553 2019-06-20
wangzhen 2019-06-20
陈凯昂 2019-06-20
crypond 2018-12-24
daiyelang 2016-08-13
倾城一屁博妹一笑 2016-08-11
wangzhen 2016-05-24
zoutian00 2016-05-03